如何在Razor视图的foreach循环外访问IEnumerable模型首个元素
嘿,这事儿很简单,直接用LINQ的方法就能搞定,给你两种适配不同场景的写法:
基础写法(集合确保非空)
如果能确定employee.Companies里肯定有元素,直接用First()方法获取第一个元素就行:
<li>Company - @Html.DisplayFor(m => employee.Companies.First().Name)</li> // Outside Loop
安全写法(集合可能为空)
要是集合存在为空的可能性,建议配合空值判断来避免程序报错,比如:
@if (employee.Companies?.Any() == true) { <li>Company - @Html.DisplayFor(m => employee.Companies.First().Name)</li> }
这样能有效防止集合为空时抛出InvalidOperationException异常,让代码更健壮。
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

