我在这里缺少什么。我只想在MVC2视图中拉出从row.detail返回的第一个,如果没有foreach循环我该怎么做?此代码目前有效,但我只想要列出第一个。任何想法..我知道这可能很简单,但我画了一个空白。
if (Model.App != null)
{
foreach (var row in Model.App.Instructions)
{
<input type="hidden" value="<%= row.Detail %>" id="ixd" />
}
}
答案 0 :(得分:12)
使用First
扩展方法从集合中获取第一个值
Model.App.Instructions.First()
注意如果集合为空,这将抛出。这可以通过使用FirstOrDefault
方法解决,该方法允许您在集合为空时指定默认值。
答案 1 :(得分:2)
似乎每个人都在使用LINQ的First(),
扩展方法,只要集合不为空就可以了。你可能还想考虑FirstOrDefault()
并检查空结果。
在没有LINQ的情况下更明显(至少对我来说)这样做的方法就是通过它的索引访问第一个元素,只要你的类型支持索引。即只需这样做:
Model.App.Instructions[0]
同样,关于确保收集的警告不是空的。
答案 2 :(得分:1)
您在寻找
吗?Model.App.Instructions.First()
答案 3 :(得分:1)
LINQ应该可以工作。
Model.App.Instructions.First()