ASP.NET MVC雕虫小技 1-2
1: public ActionResult Index(int id) {
2: var article=Db.GetArticle(id);//获取数据库里的文章
3: Title=article.Name;
4: return View();
5: }
1: abstract public class MyBaseController : Controller {
2: public string Title {
3: set {
4: ViewData["Page_Title"] = value;
5: }
6: }
7: }
1: <title><%=ViewData["Page_Title"] %></title>
1: public class HomeIndexViewModel {
2: public IContext Context { get; set; }//这个属性就是解决它的方法
3: public string Message { get; set; }
4: }
1: public ActionResult Index() {
2: HomeIndexViewModel model = new HomeIndexViewModel {
3: Context = CHContext,//这里传递
4: Message="Welcome to ASP.NET MVC!"
5: };
6: return View(model);
7: }
1: <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master"
2: Inherits="System.Web.Mvc.ViewPage<HomeIndexViewModel>" %>
3: <asp:Content ID="indexTitle" ContentPlaceHolderID="TitleContent" runat="server">
4: Home Page
5: </asp:Content>
6: <asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">
7: <h2><%= Html.Encode(Model.Message) %></h2>
8: </asp:Content>
1: public class MyBaseViewModel {
2: public IContext Context { get; set; }
3: }
4:
5: public class HomeIndexViewModel:MyBaseViewModel {
6: public string Message { get; set; }
7: }
1: abstract public class BaseController : Controller {
2: protected override void OnResultExecuting(ResultExecutingContext filterContext) {
3: var m = ViewData.Model as BaseViewModel;
4: if (m != null){
5: m.Context = CHContext;//在这里初始化
6: }
7: }
8: }
本文出自 “典之博客” 博客,请务必保留此出处http://chsword.blog.51cto.com/666596/156269
博主非常谦虚