当前位置: 首页 > news >正文

建设建设网站的小型培训机构网站开发毕业设计

建设建设网站的,小型培训机构网站开发毕业设计,网络推广的细节,洛阳做网站汉狮网络本系列文章基于ASP.NET MVC Preview5. view在MVC模式中与用户进行最直接的接触#xff0c;它负责数据的呈现。这里要注意一点就是#xff0c;view只是负责数据的呈现#xff0c;所以我们应该要尽量让view中不涉及业务逻辑的处理。 我们来添加一个Blog首页的view。在安装了…本系列文章基于ASP.NET MVC Preview5. view在MVC模式中与用户进行最直接的接触它负责数据的呈现。这里要注意一点就是view只是负责数据的呈现所以我们应该要尽量让view中不涉及业务逻辑的处理。 我们来添加一个Blog首页的view。在安装了ASP.NET MVC后我们在添加新项目的时候可以看到有MVC的view模板 注如果你的是中文版的VS安装完后可能会出现找不到这个模板的现象你可以参考在中文版VS 08中安装MVC这篇文章设置一下。 其中MVC View Content Page是有母版页的。我们在Views/Home目录下添加一个MVC View Content Page并选择我们Views/Shared目录下的Site.Master母版页 public partial class Index : ViewPage { }ASP.NET MVC默认是使用WebForm来作为view的。所以我们看到新建的aspx页面继承自ViewPage如果使用aspx页面作为ASP.NET MVC的视图引擎则所有的aspx页面都必须继承自ViewPage。我们再看一下ViewPage 我们看到ViewPage继承自ASP.NET WebForm的Page页还实现了IViewDataContainer接口同时还提供了一些Helper类的实例。我们可以使用ViewData来从Controller中往view页面中传递数据。下面我们在HomeController中的Index Action中取出Posts列表然后在View中显示。我们先在Controller中取出数据前面说过为了方便我们会直接使用BlogEngine的Model层来作为我们这个4mvcBlog的Model。所以我们的代码如下 public ActionResult Index(int? id) {     ViewData[Title]  BlogSettings.Instance.Name;      ListIPublishable posts  BlogEngine.Core.Post.Posts         .ConvertAll(new ConverterPost, IPublishable(delegate(Post p) { return p as IPublishable; }));      int pageIndex  (id ! null  id.HasValue  id.Value  0) ? id.Value : 1;     int pageSize  Math.Min(posts.Count, BlogSettings.Instance.PostsPerPage);     if ((pageIndex - 1) * pageSize  pageSize  posts.Count)     {         return ShowMsg(new Liststring() { 页码超出范围 });     }     posts  posts.GetRange((pageIndex - 1) * pageSize, pageSize);      ViewData[Posts]  posts; //向ViewData中传数据      //这里返回View给客户端如果不指定要返回的View的名称     //就是返回和Action同名的View     //也就是相当于return View(Index);     return View(); } 默认的WebFormView搜索View的顺序是按如下顺序搜索的 其中{1}为ControllerName{0}为ActionName。MasterLocationFormats为母版页的搜索顺序。 在上面的代码中我们使用ViewData[Posts]向View页面传递数据然后我们就可以在View中取出数据并呈现给用户Views/Home/Index.aspx页面的部分代码如下 如上红色框中的代码我们可以从ViewData中取出数据并转换为相应的类型。在这里我们发现ViewData要做一个类型的转换其实我们可以将ViewData.Model设置为强类型只需将我们的View页面继承自ViewPageTModel就可以了 然后在Controller里面return View()的时候直接给ViewData.Model传值如下所示 然后在View中我们可以直接从强类型的ViewData.Model中取值 由上面的代码我看可以看出ViewData.Model就是ListIPublishable类型并不需要再进行类型的转换。 ViewData还有一个Eval的方法我们可以使用这个方法从ViewData中取值。假如我么在Action中使用return View(Post);给View传递一篇日志的数据。而Post有一个Previous的属性指向前一篇日志则我们可以在View页面中可以这样来取值 % ViewData.Eval(Previous.Title)%但是如果使用我最后提供的示例Blog程序的代码这样在取值的时候直接在里面使用.来取值你会发现取不了值。因为BlogEngine里面的BusinessBase类实现了IDataErrorInfo接口而IDataErrorInfo有一个索引器也就是说BusinessBase有一个索引器就因为有一个索引器使Eval中不能用点来取值(不知道是不是bug)。 补充上面说到的不是Bug是因为BusinessBase实现了IDataErrorInfo接口该接口有个索引器导致ViewData.Eval()方法调用时搜索索引器的值时返回String.Empty而使ViewData.Eval()认为是找到值了从而失效。 我们可以将return string.Empty修改为return null这样就可以了。 好这一部分就先到这里吧。EnjoyPost by Q.Lee.lulu。 本文示例Blog的代码4mvcBlog_5.rar
http://www.pierceye.com/news/220186/

相关文章:

  • 海口制作网站企业深圳网站建设seo推广优化
  • 东莞建设质监网站建设网站方式有哪些
  • 中学网站建设书最好的网站设计开发公司
  • 下载网站源码聊城seo培训
  • 专用于做网站公司推广的方式有哪些
  • 网站如何规划c 手机网站开发模板
  • 哈尔滨网站建设优化公司室内设计网站
  • 厚街做网站的公司wordpress出现百度抓取404页面
  • 四川南充网站建设西安网站建设推广优化
  • 做企业门户网站都连连电商网站开发公司
  • 微商城网站建设价位公司要想做个网站这么弄
  • wordpress文章所属栏目关键词排名优化易下拉教程
  • 网站主题咋做免费网页模板素材网站
  • 网站建设对旅游意义公众号运营策划
  • 成都专业网站制作关于论文网站开发参考文献
  • 免费做代理郑州seo招聘
  • 做网站系统更新后wordpress
  • 兰州网站建站2024免费网站推广
  • 深圳模板建站企业网站出现搜索
  • app开发网站模板该网站正在紧急升级维护中
  • 公众号编辑器365保定seo推广
  • 陕西整站关键词自然排名优化外贸获客渠道有哪些
  • 网站策划需要具备什么福州高端建站
  • 域名注册没有网站美食网页设计素材图片
  • wordpress网站在哪里修改密码ps做网站要求高吗
  • 企业网站带商城源码Audiology wordpress
  • 星月教你做网站东营城乡建设局官网
  • 镇江网站建设开发旺店通erp系统
  • 体育直播网站建设深圳制作小程序
  • 手机微信管理系统搜索引擎优化的流程是什么