我有一个部分视图:UnderAge.cshtml
我在该局部视图中获得了Artist
(模型类)的列表。我有一个Index
父视图,它显示Person
(其他模型类)的列表,我想在其中添加部分视图UnderAge.cshtml
中的内容。我已经检查过部分视图是否正常工作,它有两个元素的列表,问题是当我尝试在{{1}上显示部分视图Artist
的{{1}}列表时父视图,可能是因为Index使用了其他模型类(Person)中的元素。
部分视图(我只是放置UnderAge.cshtml
部分),它显示了Artist模型类的列表:
Index
父视图(具有不同的@model
)并且我得到此异常:
传递到字典中的模型项的类型为' System.Collections.Generic.List' 1 [AlexMusicStore.Models.Person]',但此字典需要类型为&的模型项#39; System.Collections.Generic.IEnumerable' 1 [AlexMusicStore.Models.Artist]'
@model IEnumerable<AlexMusicStore.Models.Artist>
答案 0 :(得分:0)
试试这个,
@model IEnumerable<AlexMusicStore.Models.Artist>
<div>
@Html.Partial("UnderAge"));
</div>
OR
您也可以创建这样的模型,
public class Person
{
public IEnumerable<ArtistModel> Artists{ get; set;} //Passed to Partial
}
public class ArtistModel
{
//your values here
}
然后在父视图中显示如下
@model IEnumerable<AlexMusicStore.Models.Person>
<div>
@{
Html.RenderPartial("~/Views/Artists/UnderAge.cshtml", Model.Artists);
}
</div>