欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Asp.Net Mvc2 增刪改查DEMO附下載

 更新時(shí)間:2012年04月26日 17:17:37   作者:  
接觸mvc也有一段時(shí)間了(2.0),也看到園子里很多人在學(xué)習(xí),自己也在園子里面看過(guò)前輩們寫(xiě)的博客,確實(shí)受益匪淺。本文寫(xiě)的都是基礎(chǔ)中的基礎(chǔ),僅供想學(xué)習(xí)MVC的新手們?nèi)腴T之作
1、List頁(yè)面,一般List頁(yè)面主要用來(lái)顯示數(shù)據(jù),本文中的List頁(yè)面提供,數(shù)據(jù)顯示并且分頁(yè)、刪除操作、新增及修改操作。因?yàn)榭吹綀@子里面有部分人在使用MVC進(jìn)行數(shù)據(jù)顯示的時(shí)候還在使用ViewData,這里介紹的是強(qiáng)類型顯示數(shù)據(jù)。添加新的視圖,在第一行代碼可以看到
復(fù)制代碼 代碼如下:

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

這里可以定義這個(gè)視圖的類型,操作起來(lái)也比較方便,我們這里這樣定義
復(fù)制代碼 代碼如下:

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<Web.Models.PageData<Web.Models.Users>>" %>

這里返回的是一個(gè)分頁(yè)集合實(shí)體類,實(shí)體類定義
復(fù)制代碼 代碼如下:

/// <summary>
/// 分頁(yè)查詢記錄集類
/// </summary>
/// <typeparam name="T">通類類型</typeparam>
public class PageData<T>
{
/// <summary>
/// 獲取或設(shè)置查詢返回的分頁(yè)記錄集
/// </summary>
public List<T> GetDate = new List<T>();

/// <summary>
/// 獲取或設(shè)置符合查詢條件總記錄數(shù)
/// </summary>
public int Count { get; set; }

/// <summary>
/// 每頁(yè)多少條
/// </summary>
public int PageSize = 5;

/// <summary>
/// 當(dāng)前多少頁(yè)
/// </summary>
public int PageIndex { get; set; }
}

經(jīng)過(guò)控制器處理之后返回相關(guān)參數(shù),包含分頁(yè)所需要的顯示數(shù)據(jù)、總記錄數(shù)、頁(yè)碼、當(dāng)前第幾頁(yè)信息。因?yàn)樵贚ist頁(yè)面中已經(jīng)定義過(guò)類型了,那么調(diào)用的時(shí)候直接通過(guò)Model就可以調(diào)用出來(lái)。

上圖可以看出,GetDate這個(gè)屬性中保存的是泛型的數(shù)據(jù)集合,這樣我們就可以循環(huán)的顯示出來(lái)。如果分頁(yè)的話,根據(jù)頁(yè)碼傳值至控制器,重新獲取數(shù)據(jù),填充,然后返回,再顯示,這里就可以實(shí)現(xiàn)顯示數(shù)據(jù)并且分頁(yè)的功能了。這里稍微介紹下分頁(yè)的插件,用的是jquery.pagination,如果大家不熟悉使用的話,園子里有詳細(xì)介紹的文章。

控制器中從數(shù)據(jù)庫(kù)中獲取相關(guān)數(shù)據(jù),填充至實(shí)體類中,這樣視圖中直接調(diào)用就OK了。這里說(shuō)寫(xiě)控制器中的寫(xiě)法。

復(fù)制代碼 代碼如下:

$(function () {
//分頁(yè)參數(shù)設(shè)置
$("#Pagination").pagination(<%=Model.Count%>, {
callback: pageselectCallback,
prev_text: "« 上一頁(yè)", //上一頁(yè)按鈕文字
next_text: "下一頁(yè) »", //下一頁(yè)按鈕文字
items_per_page: <%=Model.PageSize%>, //每頁(yè)顯示多少條
num_display_entries: 5, //連續(xù)分頁(yè)主體部分顯示的分頁(yè)條目數(shù)
current_page: <%=Model.PageIndex%>, //當(dāng)前多少頁(yè)
num_edge_entries: 1, //兩側(cè)顯示的首尾分頁(yè)的條目數(shù)
link_to: "?page=__id__"
});
});
function pageselectCallback(page_id, jq) {
//回調(diào)函數(shù)
}

2、添加操作。我們先定義一個(gè)實(shí)體類。
復(fù)制代碼 代碼如下:

/// <summary>
/// 用戶ID
/// </summary>
public int UID { get; set; }

/// <summary>
/// 登錄帳號(hào)
/// </summary>
public string UName { get; set; }

/// <summary>
/// 登錄密碼
/// </summary>
public string UPassWord { get; set; }

然后在新增的頁(yè)面我們需要定義兩個(gè)input,然后輸入登錄帳號(hào)和登錄密碼,注意在定義兩個(gè)input的時(shí)候,請(qǐng)務(wù)必設(shè)置input的name屬性跟實(shí)體類對(duì)應(yīng),當(dāng)然我們的視圖也需要定義類型為Users(實(shí)體類,類名),設(shè)置action和method屬性。
復(fù)制代碼 代碼如下:

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<Web.Models.Users>" %>
<form action="/Demo/Add/" method="post">
<table>
<tr>
<td>登錄帳號(hào):</td>
<td><input type="text" name="UName" /></td>
</tr>
<tr>
<td>登錄密碼:</td>
<td><input type="password" name="UPassWord" /></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="提交" /></td>
</tr>
</table>
</form>

因?yàn)镸VC會(huì)把表單自動(dòng)映射到實(shí)體類的字段中,那么我們?cè)诳刂破髦兄苯荧@取這個(gè)實(shí)體類就OK了。因?yàn)榭吹接行┩@取數(shù)據(jù)是通過(guò)Request.Form[""]來(lái)獲取值的。
復(fù)制代碼 代碼如下:

[HttpPost]
//進(jìn)行添加操作
public ActionResult Add(Users model)
{
//這里可以進(jìn)行新增操作
//Bll.Add(model);
return RedirectToAction("List");
}

這樣實(shí)體類中就保存了表單中的值了,不用在一個(gè)個(gè)去獲取賦值了。修改的話跟這個(gè)差不多,這里就不過(guò)細(xì)去講了,在文章的最后會(huì)提供DEMO的下載。

點(diǎn)擊下載

相關(guān)文章

  • ASP.NET Mvc開(kāi)發(fā)之刪除修改數(shù)據(jù)

    ASP.NET Mvc開(kāi)發(fā)之刪除修改數(shù)據(jù)

    這篇文章主要介紹了ASP.NET Mvc開(kāi)發(fā)中的刪除修改數(shù)據(jù)功能,感興趣的小伙伴們可以參考一下
    2016-03-03
  • asp.net 數(shù)據(jù)綁定的實(shí)例代碼

    asp.net 數(shù)據(jù)綁定的實(shí)例代碼

    這篇文章介紹了asp.net 數(shù)據(jù)綁定的實(shí)例代碼,有需要的朋友可以參考一下
    2013-07-07
  • 詳解ASP.NET Core Web Api之JWT刷新Token

    詳解ASP.NET Core Web Api之JWT刷新Token

    這篇文章主要介紹了詳解ASP.NET Core Web Api之JWT刷新Token,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • asp.net讀取excel中的數(shù)據(jù)并綁定在gridview

    asp.net讀取excel中的數(shù)據(jù)并綁定在gridview

    這篇文章主要介紹了asp.net讀取excel中的數(shù)據(jù)并綁定在gridview上的方法,需要的朋友可以參考下
    2014-02-02
  • 解決AJAX.NET中的懸停panel在頁(yè)面加載時(shí)閃爍的問(wèn)題

    解決AJAX.NET中的懸停panel在頁(yè)面加載時(shí)閃爍的問(wèn)題

    AJAX.NET的兩個(gè)懸??丶?分別是HoverMenuExtender和ModalPopupExtender.他們可以打造很好的懸停效果...通常,我都是用panel來(lái)作為懸停內(nèi)容的容器..
    2009-06-06
  • .net core webapi 大文件上傳到wwwroot文件夾的操作代碼

    .net core webapi 大文件上傳到wwwroot文件夾的操作代碼

    這篇文章主要介紹了.net core webapi 大文件上傳到wwwroot文件夾的操作代碼,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-12-12
  • 解析linq to xml操作XML的示例分析

    解析linq to xml操作XML的示例分析

    本篇文章是對(duì)linq to xml操作XML的示例進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • 利用docker-compose搭建AspNetCore開(kāi)發(fā)環(huán)境

    利用docker-compose搭建AspNetCore開(kāi)發(fā)環(huán)境

    這篇文章主要為大家詳細(xì)介紹了利用docker-compose搭建AspNetCore開(kāi)發(fā)環(huán)境,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • asp.net 臨時(shí)數(shù)據(jù)保存實(shí)現(xiàn)代碼

    asp.net 臨時(shí)數(shù)據(jù)保存實(shí)現(xiàn)代碼

    在一個(gè)程序運(yùn)行的時(shí)候往往我們會(huì)回到上一個(gè)頁(yè)面,或者我們會(huì)需要當(dāng)時(shí)留在這個(gè)頁(yè)面的臨時(shí)數(shù)據(jù),例如,我們用百度搜索“腳本”之后我們會(huì)看到很多那啥我就不再說(shuō)了?。∪缓笪覀兎祷乇緛?lái)頁(yè)面在文本框內(nèi)會(huì)有“腳本”的字樣,我們一下代碼段就是實(shí)現(xiàn)這個(gè)功能
    2012-04-04
  • 一些.NET對(duì)多線程異常處理技巧分享

    一些.NET對(duì)多線程異常處理技巧分享

    多線程應(yīng)用,在實(shí)際的項(xiàng)目或產(chǎn)品開(kāi)發(fā)中,原則上來(lái)說(shuō),應(yīng)該盡量避免,但是在強(qiáng)調(diào)用戶體驗(yàn)的要求下或開(kāi)發(fā)平臺(tái)的限制下(如 Silverlight Socket 通訊),我們不得不用多線程。
    2010-04-04

最新評(píng)論