c# – 语法问题:@ Html.LabelFor(m => m.UserName)
从ASP.NET 2.0(VB)到MVC 3(C#),我对于用于View的语法感到非常困惑.
@Html.LabelFor(m => m.UserName) 那m来自哪里?我唯一的猜测是,它代表了被传递到视图中的模型.我尝试将m更改为c,它仍然可以正常工作. 语法的一部分涉及“=>”更多的MVC,C#或者剃刀元素? 解决方法
这是lambda表达式中的参数.
那是因为这个名字没关系.它只是一个参数名称,实际上并没有引用任何现有的变量.
它是C#,但是LabelFor使用编译器翻译m => m.UserName来提取构建标签所需的内容. 这是一个非常深刻的错综复杂的课题.我建议你找到一本你很舒服的书(例如,深度C#在这个问题上非常好)了解更多.你想阅读关于lambda表达式和表达式树. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |