久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

淺談.net MVC

時間:2019-05-14 02:30:26下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《淺談.net MVC》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《淺談.net MVC》。

第一篇:淺談.net MVC

這些天開始學習asp.netmvc,用傳統的asp.net已經快四的年了,剛開始接觸asp.netmvc確認感覺有點不適應,主要體現在asp.netmvc的實現上。

ASP.net MVC使用心得:問題總結powered by 25175.net

問題一:要想學習asp.netmvc,我個人覺的最重要的一步是知道mvc路由機制,傳統的asp.net程序要想訪問一個頁面,都是根據頁面路徑來訪問,但MVC并不能直接訪問aspx頁面。

問題二:理解MVC三部分的含義和用法。當我們創建一個asp.netmvc應用程序時,系統會默認生成三個文件夾:

1:Controllers,對應MVC中的C,主要是處理所有請求與做出對應的響應;

2:Models,對應MVC中的M,相當時我們平時創建工程中的實體工程,只不過在MVC中它充當了存放數據模型的作用;

3:Views,對應MVC中的V,這里就是存放用戶訪問的頁面文件,但是這個文件不能在瀏覽器中根據路徑訪問。

對于系統生成的asp.netmvc項目,我對其做了如下擴展:

擴展點一:系統之所以在web工程中直接創建了三個文件夾,是為了更加直觀的體現MVC模式,真正項目中我們需要把它們分開。

擴展點二:MVC中重要的路由處理,默認情況是在Global.asax文件中,我們也可以把這塊內容獨立出來。擴展點三:把Controller類和業務邏輯分離,這里可以采用Repository模式。

ASP.net MVC使用心得:案例DEMO

創建一個簡單的留言簿的項目,數據存儲采用sql,本想用linq to entity,但總覺的這部分還相關不完善,且性能存在問題,故使用傳統ado.net實現數據存儲。下面是這個項目的分層。

1:GuestBook.Web,頁面表示層,MVC中的V。

2:GuestBook.MVC.Controller,存放項目所有的Controller,MVC中的C。我們知道Controller有兩個作用:第一,處理請求;第二,做出對應的響應。第二點就是我們平時理解的后臺功能實現,例如數據的增刪改查等。我們可以把這部分功能與Controller分離,即所有的業務邏輯都寫在業務邏輯層,不直接依賴

Controller,我們可以進一步把這些功能點抽象出來,讓Controller依賴一個公共的接口。這個思想我之前的一篇文章有點異曲同工之處:對增刪改查用面向對象進行包裝

首先:創建一個Repository接口:IRepository.cs,里面包含些常見數據處理操作方法:這個接口是一個泛型接口,以實現所有實體類的通用性。

1.public interface IRepository< T>

2.{

3.List< T> FindAllInfo();

4.T GetInfo(T model);

5.boolAdd(T model);

6.boolDelete(T model);

7.boolEdit(T model);

8.}

然后:實現一條留言的數據處理:

1.public List< GuestBookInfo> FindAllInfo()

2.{

3.string sql = “select * from GuestBook”;

4.5.List< GuestBookInfo> list = new List< GuestBookInfo>();

6.using(SqlDataReader dr=SqlHelper.ExecuteReader(conn ,CommandType.Text ,sql))

7.{

8.while(dr.Read())

9.{

10.GuestBookInfo model = new GuestBookInfo();

11.model.ID = int.Parse(dr[“ID”].ToString());

12.model.sTitle = dr[“sTitle”].ToString();

13.model.sContent = dr[“sContent”].ToString();

14.list.Add(model);

15.}

16.17.}

18.return list;

19.}

20.public GuestBookInfo GetInfo(GuestBookInfo model)

21.{

22.string sql = “select * from GuestBook where ID=”+model.ID.ToString();

23.using(SqlDataReader dr = SqlHelper.ExecuteReader(conn, CommandType.Text, sql))

24.{

25.if(dr.Read())

26.{

27.model.ID = int.Parse(dr[“ID”].ToString());

28.model.sTitle = dr[“sTitle”].ToString();

29.model.sContent = dr[“sContent”].ToString();

30.31.}

32.33.}

34.return model;

35.}

36.public bool Add(GuestBookInfo model)

37.{

38.string sql = “insert into GuestBook(sTitle,sContent)values('” + model.sTitle + “','” + model.sContent + “')”;

39.int i = SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql);

40.if(i > 0)

41.{ return true;}

42.return false;

43.}

44.public bool Delete(GuestBookInfo model)

45.{

46.string sql = “delete GuestBook where ID=” + model.I

D.ToString();

47.int i = SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql);

48.if(i > 0)

49.{ return true;}

50.return false;

51.}

52.public bool Edit(GuestBookInfo model)

53.{

54.string sql = “update GuestBook set sTitle='” + model.sTitle + “',sContent='” + model.sContent + “' where ID=” + model.ID.ToString();

55.int i = SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql);

56.if(i > 0)

57.{ return true;}

58.return false;

59.}

其實:Controller依賴IRepository接口。

1.public class GuestBookController : System.Web.Mvc.Controller

2.{

3.IRepository< GuestBookInfo> inter = new BLL_GuestBook();

4.public ActionResult Index()

5.{

6.var models = inter.FindAllInfo();

7.return View(“Index”, models);

8.}

9.[AcceptVerbs(HttpVerbs.Post)]

10.public ActionResult Create(GuestBookInfo model)

11.{

12.13.inter.Add(model);

14.return RedirectToAction(“Index”);

15.}

16.public ActionResult Create()

17.{

18.GuestBookInfo model = new GuestBookInfo();

19.return View(model);

20.}

21.public ActionResult Details(int id)

22.{

23.24.GuestBookInfo model=new GuestBookInfo();

25.model.ID =id;

26.model =inter.GetInfo(model);

27.if(string.IsNullOrEmpty(model.sTitle))

28.{ return View(“NotFound”);}

29.else

30.{

31.return View(“Details”,model);

32.}

33.}

34.public ActionResult Edit(int id)

35.{

36.GuestBookInfo model = new GuestBookInfo();

37.model.ID = id;

38.model = inter.GetInfo(model);

39.if(string.IsNullOrEmpty(model.sTitle))

40.{ return View(“NotFound”);}

41.else

42.{

43.return View(“Edit”, model);

44.}

45.}

46.[AcceptVerbs(HttpVerbs.Post)]

47.public ActionResult Edit(int id, FormCollection formValues)

48.{

49.GuestBookInfo model = new GuestBookInfo();

50.model.ID = id;

51.model = inter.GetInfo(model);

52.UpdateModel(model);

53.inter.Edit(model);

54.return RedirectToAction(“Index”);

55.}

56.public ActionResult Delete(int id)

57.{

58.GuestBookInfo model = new GuestBookInfo();

59.model.ID = id;

60.model = inter.GetInfo(model);

61.if(model == null)

62.return View(“NotFound”);

63.inter.Delete(model);

64.return RedirectToAction(“Index”);

65.}

66.67.}

3:GuestBook.Model,MVC中的M。

4:GuestBook.RouteManager,路由管理項目,把路由處理從Global.asax中分離開。我們創建一個新類:MyMvcAppliation.cs

1.publicclass MyMvcAppliation:HttpApplication

2.{

3.public static void RegisterRoutes(RouteCollection routes)

4.{

5.routes.IgnoreRoute(“{resource}.axd/{*pathInfo}”);6.7.routes.MapRoute(8.“Default”,// Route name

9.“{controller}/{action}/{id}”,// URL with parameters

10.new { controller = “Home”, action = “Index”, id = “" },// Parameter defaults

11.new string[] { ”GuestBook.MVC.Controller“ }

12.);

13.14.15.}

16.17.protected void Application_Start()

18.{

19.ControllerBuilder.Current.DefaultNamespaces.Add(”GuestBook.MVC.Controller");

20.RegisterRoutes(RouteTable.Routes);

21.}

22.}

5:GuestBook.Data,數據處理工具類,例如SqlHelp等等。

6:GuestBook.DAL,數據處理層。

7:GuestBook.BLL,業務邏輯層。

8:GuestBook.MyInterface,相關接口,本項目中包含Repository模式中的接口類。

這篇文章主要是探討了MVC項目的分層以及部分擴展,歡迎大家提出更好的想法。這些就是我ASP.net MVC的使用心得。

下載淺談.net MVCword格式文檔
下載淺談.net MVC.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    主站蜘蛛池模板: 人妻av中文字幕无码专区| 色悠久久久久综合网国产| 日韩精品久久久肉伦网站| av天堂亚洲区无码小次郎| 国产免费不卡午夜福利在线| 国产综合久久99久久| 香蕉在线 亚洲 欧美 专区| 女女互磨互喷水高潮les呻吟| 人妻无码αv中文字幕久久琪琪布| 国产a级毛片久久久精品毛片| 级r片内射在线视频播放| 亚洲午夜成人精品电影在线观看| 免费国产黄网站在线观看可以下载| 婷婷国产天堂久久综合亚洲| 国产熟女精品视频大全| 亚洲精品无码久久久久久| 狠狠综合久久综合中文88| 麻豆国产尤物av尤物在线观看| 色偷偷亚洲男人的天堂| 中文字幕人成乱码熟女app| 韩国三级中文字幕hd| 精品欧美乱码久久久久久1区2区| 丰满少妇被粗大猛烈进人高清| 亚洲精品无码久久久久av老牛| 西西人体大胆www44he七| 成年永久一区二区三区免费视频| 伊人色综合网久久天天| 特级西西人体444www高清大胆| 中国女人和老外的毛片| 51妺嘿嘿午夜福利| 成年午夜性影院免费观看| 婷婷五月深深久久精品| 国产在线播放精品视频| 久久精品国产亚洲av久| 99久久无色码中文字幕人妻| 中文字幕亚洲乱码熟女一区二区| 国产美女亚洲精品久久久综合| 成片免费观看| 国产精品无码一区二区在线a片| 亚洲理论在线a中文字幕| 少妇人妻88久久中文字幕|