微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

InvalidOperationException: 没有具有键“ArtistID”的“IEnumerable<SelectListItem>”类型的 ViewData 项

如何解决InvalidOperationException: 没有具有键“ArtistID”的“IEnumerable<SelectListItem>”类型的 ViewData 项

我有一个艺术家类,它与专辑类存在一对多关系。我为专辑类搭建了一个控制器及其相应的视图。在我的相册创建视图中,我有以下代码

<div class="form-group">
    <label asp-for="Artist.ArtistID" class="control-label"></label>
    @Html.DropDownListFor(m=>m.Artist.ArtistID,(SelectList)ViewBag.AllArtists,new { @class="form-control"}) 
</div>

在我的专辑控制器中,我有 GET 方法 ViewBag.GetAllArtists = GetAllArtists(); GetAllArtists 在哪里

public SelectList GetAllArtists()
{
    List<Artist> allArtists = _context.Artists.ToList();
    Artist blankArtist = new Artist();
    blankArtist.ArtistID = 0;
    blankArtist.ArtistName = "Select Artist";
    allArtists.Add(blankArtist);   

    SelectList mslAllArtists = new SelectList(allArtists.OrderBy(a => a.ArtistID),"ArtistID","ArtistName");
    
    return mslAllArtists;
}

谁能指出我不断收到错误的原因:

"InvalidOperationException: 没有类型的 ViewData 项 'IEnumerable' 具有键 'ArtistID'。"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。