ViewStart
创建默认的ASP.NET MVC 3时,会自动生成_ViewStart.cshtml文件,指向了一个默认的布局,
如果一组视图有共同的设置,则_ViewStart.cshtml文件 便很有用,但是如果需要另选择布局,
则需要重新指定视图的Layout属性如下:
@{
Layout=“~/Views/Share/others.cshtml”;
}
指定分部视图
除了返回视图外,操作方法也通过PartialView方法以PartialViewResult的形式返回分部视图:
如:
Public ActionResult Message()
{
ViewBag.Message=“This is Olive”;
Retrun PartialView();
}
如果布局是由_Viewstart.cshtml页面指定的,则布局无法渲染.
分部视图多用于AJAX技术中的部分更新情形
如:使用JQuery将一个分部视图内容加载到使用AJAX调用当前视图中:
<div id=“result></div>
<script type=”text/javascript“>
$(function(){
$('#result').load('/home/message');
});
</script>
视图引擎
首先来了解下ASP.NET MVC 3的生存周期,
控制器本身并不渲染视图,它仅准备暑假,并返回一个ViewResult实例来决定显示哪个视图,
控制器基类包含一个名为View的简单方法来返回一个ViewResult实例,在视图引擎后台
ViewResult被调用到当前的视图引擎中来渲染该视图
模型
本章要讨论的是那些发送信息到数据库,执行业务计算并在视图中渲染的模型对象.这些对像代表着应用程序的关注的域,
模型就是想要保存、创建、更新和删除对象
基架的概念
ASP.NET MVC中基架可以为应用程序的创建、读取、更新和删除(CRUD)提供所需的样板代码.基架模板检测模型类的
定义,然后生成控制器以及该控制器控制的相关视图.
ASP.NET MVC3共有三个模板可供选择:
l Empty Controller:该模板会向Controller文件夹中添加一个具有指定名称且派生自Controller类的控制器,
该控制器仅带有Index操作,且在内部仅返回一个默认的ViewResult实例,不会生成任何视图
l Controller with Empty Read/Write Actions:该模板会向项目中添加一个带有Index、Details、Create、Edit和Delete操作
控制器,但是还需自己为其添加代码,实现操作,并为其创建视图
l Controller with Read/Write Actions and Views,Using Entity Framework:该模板生成整套的带有Index、Details、
Create、Edit和Delete操作控制器,以及相关的所有视图,还生成了 与数据库交互的代码.
该模板需要指定选择合适的类模型(基架检测会检测所选择的模型的所有属性,然后根据这些信息来创建控制器、
视图、数据库操作等代码) 和数据上下文对象名称