将ViewModels列表中的单个值传递到视图

问题描述:

我有一个从我的控制器传入的ViewModel的列表。我的观点是建立在每一个价值观的基础上。然而,有一个价值,我的标题,我只想拉一次,我不希望我的列表中有一个标题为foreach项目。我会如何写?我试图将ViewModels列表中的单个值传递到视图

<h1 class="header-title">@Model.CollectionsManagementViewModels.Select(i => i.Title)</h1> 

但它拉在一个字符串

“System.Linq.Enumerable + WhereSelectListIterator`2 [Program.Models.ViewModels.CollectionsManagementViewModel,System.String]”

您正在设置h1标记的html集合,因为Select()将投影一个新集合,只有一个属性为Title属性,您需要将FirstOrDefault()作为一个属性快速修复此:

<h1 class="header-title">@Model.CollectionsManagementViewModels 
           .Select(i => i.Title) 
           .FirstOrDefault() 
</h1> 

,或者如果它用于确保数据总是存在的,那么你可以使用像First()

<h1 class="header-title">@Model.CollectionsManagementViewModels 
           .First()        
           .Title 
</h1> 
+0

笑,哇我觉得愚蠢。谢谢。 – CheezStix