[英]ASP.NET MVC ViewModel always null @html.displayfor
[英]Asp.net mvc html.DisplayFor syntax in linq/lambda
我正在学习asp.net mvc,我刚开始,我决定从网络表格转移到mvc。
我理解linq和lambdas的基础知识,但我想知道或得到关于这个特定语法的一个很好的解释。
@model IEnumerable<CodeplexMvcMusicStore.Models.Album>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Genre.Name)
</td>
我想知道modelItem => item.Genre.Name
的含义是什么
我对此的了解是, modelItem
获取值item.Genre.Name
,然后传递方法Html.DisplayFor()
。
我也很好奇如何在不使用lambda的情况下编写相同的代码。
纠正我,如果我错了,我只想知道代码的含义以及如何阅读。
阅读本文: 为什么所有的Lambdas? :解释Lambdas使用的好文章。
lambda表达式(Expression类型)允许视图作者使用强类型代码,同时为HTML帮助程序提供完成工作所需的所有数据。
你可以写
@model IEnumerable<CodeplexMvcMusicStore.Models.Album>
@foreach (var item in Model) {
<tr>
<td>
@Html.Raw(item.Genre.Name)
</td>
要么
@model IEnumerable<CodeplexMvcMusicStore.Models.Album>
@foreach (var item in Model) {
<tr>
<td>
@item.Genre.Name
</td>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.