MVC 其他
1. 分部视图(PartialView方法)。
2. 在视图中直接请求Action方法。
3. 视图传数据四种方法:
ViewData
TempData(的用法:用来在为一次请求中同时执行的多个Action方法之间共享数据使用。)
ViewBag
Model
4. 在全局配置文件中,已经配置了一个路由过滤器,为第七个事件注册了路由方法。
5. 请求管道里的所有事件。
6. 在Application_Start中向静态路由表注册了路由数据,在管道第七个事件方法中使用了该路由表数据。
7. 在第七个事件中根据URL获取路由对象。
8. ASP.NET框架和MVC框架公用同一个请求管道,只不过在中间加以判断区分。
9. 使用AJAX请求MVC查出的EF转成的DTO数据。
10. 模型绑定。[HttpPost](特性)
11. MVC验证。
12. @Html有一部分是自己内部的方法,很大部分都是扩展程序通过扩展方法方式加入到其中。
13.
@Url.Action(ActionName,ControllerName);
@Url.RoutoUrl(“Default”,new {controller=”Stu”,action=”Index”});
<br />直接编写url会造成url格式固定不灵活<br />
<a href="/Stu/index">哈哈</a>
<br />为此,可以用Url.Action方法,根据路由规则生成url地址<br />
<a href="@Url.Action("index2","stu2")">Url.Action</a>
<br />也可以使用Url.RouteUrl方法,根据路由规则生成url地址<br />
<a href="@Url.RouteUrl("Default2", new { controller="Stu3",action="Index3",id=UrlParameter.Optional })">Url.RouteUrl</a>
<h2>在视图上直接请求 其他Action</h2>
@Html.Action("Part");
@Html.ActionLink("我是超链接", "Part");
@Html.ActionLink("我是超链接", "Part","Home");
@Html.ActionLink("我是超链接", "Part", "Home", new {id="btnLink",style="border:1px solid #0094ff" });
14. HtmlHelper,弱类型方法和强类型方法,视图生成html控件。(弱类型方法)
<h2>创建html标签</h2>
<h2>创建表单标签1 - 推荐</h2>
@using(Html.BeginForm("Login","User",FormMethod.Post,new{id = "form1"}))
{
<input type="text" />
@Html.TextBox("txtName","我是文本框",new{style="border:1px solid #0094ff;"});<br />
@Html.TextArea("txtContext","我是文本域");
}
<h2>创建表单标签2</h2>
@Html.BeginForm("Login", "User", FormMethod.Post, new { id="form2"})
<input type="text" />
@{Html.EndForm();}
15. HtmlHelper,弱类型方法和强类型方法,视图生成html控件。(强类型方法)。
[特性的使用]
16. 使用强类型方法自动读取Model属性对象所属类的DisplayName特性。
17. EditorFor方法根据属性的DataType特性生成对应的html标签。
18. 使用实体类的验证标签生成js验证以及错误提示。
jquery.validate.unobtrusive.js的使用。