在视图中使用Html Helpers时。如果我尝试写一个像“m => ....”这样的lambda表达式。小m自动变为“模型”。如果我选择了没有“ For ”字样的帮助,通常会发生这种情况。像DropdownList的DropdownList For 。此外,如果我使用lambda表达式的任何其他字母,它将变为其他内容。
如果我没有错, m => m.name 和 Model.name 也会得到相同的结果。
为什么?
答案 0 :(得分:2)
如果您这样做:
@Html.TextBoxFor(m => m.Name)
而且:
@Html.TextBoxFor(Model => Model.Name)
在Views的Asp.Net MVC中,我们有一个名为Model
的属性,可以访问您从控制器获取的Model
(大写M
)。它区分大小写。
在For
或Html.TextBox()
等名称中没有Html.DropDownList()
字词的Html帮助程序是帮助生成模型中不存在的任何其他字段的html标记。实际上,在asp.net mvc的第一个版本中,我们没有强类型视图,因此,我们没有Html.TextBoxFor
样本,因此,我们曾经使用过这个弱帮助器。
在MVC的基础上,就lambda表达而言,参数的名称无关紧要。