我正在使用razor来显示作者列表,因为你可以看到uno“MyClass”可以有很多作者。
public class MyClass
{
[Key]
public int MyClassId{ get; set; }
//more properties
/*****One measure has many authors*****/
public virtual ICollection<Author> Authors { get; set; }
}
public class Author
{
[Key]
public int AuthorId { get; set; }
public virtual Measure Measure { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
}
我想在foreach循环中显示FirstName和LastName
@foreach (var item in Model.Authors)
{
@item.FirstName+" " + @item.LastName
}
但似乎我没有使用正确的sintax,如何显示名字和姓氏?
由于
答案 0 :(得分:2)
确保完成以下步骤:
1)将模型传递给视图(显然包含数据)
var myModel = //some object of your MyClass;
return View(myModel);
2)将@model MyClass
添加到视图顶部以接收模型
3)循环应如下所示:
@foreach (var item in Model.Authors.ToList())
{
<p>
@Html.Raw(item.FirstName + " " + item.LastName)
</p>
}
编辑:.ToList()可能是必要的,因为作者属于ICollection
答案 1 :(得分:0)
@ item.FirstName +“”+ @ item.LastName
在运行时,应抛出错误,语法正确:
选项1:
@foreach (var item in Model.Authors)
{
@item.FirstName @item.LastName
}
选项2:
@foreach (var item in Model.Authors)
{
string contactenated = item.FirstName + " " + item.LastName;
@contactenated
}