传递数据到视图母版页(适合动态绑定菜单)

传递数据到视图母版页(适合动态绑定菜单)

ID:16397867

大小:89.50 KB

页数:9页

时间:2018-08-09

传递数据到视图母版页(适合动态绑定菜单)_第1页
传递数据到视图母版页(适合动态绑定菜单)_第2页
传递数据到视图母版页(适合动态绑定菜单)_第3页
传递数据到视图母版页(适合动态绑定菜单)_第4页
传递数据到视图母版页(适合动态绑定菜单)_第5页
资源描述:

《传递数据到视图母版页(适合动态绑定菜单)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、[翻译]ASP.NETMVC教程-传递数据到视图母版页(适合动态绑定菜单)原文地址:http://www.asp.net/learn/mvc/tutorial-13-cs.aspx这篇教程的目的是解释你可以怎样将数据从一个控制器传递到一个视图母版页。我们测试了两种传递数据到母版页的策略。首先,我们讨论了一个容易的方案,结果导致了一个难以维护的应用。接下来,我们测试了一个比较好的解决方案。它需要多一点的早期工作,但是会产生更容易点维护的应用。传递数据到母版页这篇教程的目的是解释你可以怎样将数据从一个控制器传递到一个视图母版页。我们测试了两种传递数据到母版页的策略。

2、首先,我们讨论了一个容易的方案,但这个方案导致应用难以维护。接下来,我们测试了一个比较好的解决方案。它需要多一点的早期工作,但是会产生更容易点维护的应用。问题想象下你正在创建一个电影数据库应用,然后你想要在应用的每一页都显示一个电影分类列表(如图1)。此外,这个电影分类表存储在数据库表里。因此,从数据库检索这些分类然后在一个视图母版页面里显示这些电影分类显然很有意义。图1:在视图母版页显示电影分类问题出来了。在视图母版页里你怎么检索电影分类列表?直接在母版页调用模型类的方法显然很诱人。换句话说,在你的模板页里检索数据库的数据是很诱人的。然而,绕过你的MVC控制器

3、去获得接触数据库会违反干净的关注点分离--这个MVC应用最主要的优点之一。在一个MVC应用里,你会想要所有的MVC视图和MVC模型的交换都由MVC控制器来处理。这种关注点的分离意味着一个更可维护的、适应性更强并且测试性更强的应用。在一个MVC应用,所有的数据传递到一个视图--包括视图母版页--都应该由控制器行为传递到视图。此外,数据应该利用视图数据的优势来传递。在这篇教程的其余部分,我测试了传递数据到视图母版页的两种方法。简单的解决方案让我们从一个简单的解决方案开始。这个简单的解决方案是在每一个控制器行为里传递视图数据到母版页。考虑下清单1的控制器。它暴露了名叫

4、Index()和Detials()的两个行为。Index()行为方法返回了Movies数据库表的所有电影。Details()行为方法返回了特定的电影分类的所有电影。清单1-ControllersHomeController.csusingSystem.Linq;usingSystem.Web.Mvc;usingMvcApplication1.Models;namespaceMvcApplication1.Controllers{     [HandleError]     publicclassHomeController:Controller     {  

5、        privateMovieDataContext_dataContext=newMovieDataContext();          ///

          ///Showlistofallmovies          ///          publicActionResultIndex()          {               ViewData["categories"]=fromcin_dataContext.MovieCategories                      

6、   selectc;               ViewData["movies"]=frommin_dataContext.Movies                         selectm;               returnView();          }          ///

          ///Showlistofmoviesinacategory          ///          publicActionResultDetails(intid)          {   

7、            ViewData["categories"]=fromcin_dataContext.MovieCategories                         selectc;               ViewData["movies"]=frommin_dataContext.Movies                         wherem.CategoryId==id                         selectm;               returnView();          }   

8、  }}注意到Index

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。