学习笔记26_MVC前台强类型参数

*一般在MVC中,aspx后台要往前台传递参数,使用ViewData["Key"] = obj;

前台就要 <%=(ViewData["key"] as ClassName).xxx属性%>

这个的坏处是,如果key的名字改了,前台就不能获取数据,而且在编译阶段查不出错误,所以,可以改成如下写法:

ViewData.Model = obj;

对应的,在Aspx中,输入声明数据类型,做法:<%@page Language=... Inheris = "System.Web.Mvc.ViewPage<ClassName>"%>

那么,前台写法就可以变成 <%=ViewData.Model.xxx属性了%>

**对于强类型的数据传递,在使用前台html的Api时,写法变得不一样,

之前  <% = html.TextBox("ID")%> ,

现在  <% = html.TextBoxFor(model = > model.ID)>//使用lumda表达式.

****那么,就相当于

<input id="ID" name="ID" type="text" value="<%=ViewData.Model.ID%>"

*注意:一般在添加视图的时候,VS能让你选择使用哪个类作为数据交流模型,这时候,选择 “强类型视图”,并且选择对应的类即可。

原文地址:https://www.cnblogs.com/pylblog/p/6971845.html