在我的cshtml视图中,我具有以下预制的(脚手架)代码,我对其进行了一些更改,以便能够在此处放置枚举列表而不是文本框:
no transaction == no id
在 <div class="form-group">
<label asp-for="Color" class="control-label"></label>
<select asp-for="Color" asp-items="Model.Colors" class="form-control"></select>
<span asp-validation-for="Color" class="text-danger"></span>
</div>
处发生错误。
在我的模型中,我尝试进行了以下操作:Model.Colors
,如Cannot implicitly convert type 'System.Web.Mvc.SelectList' to 'System.Collections.Generic.ICollection<System.Web.Mvc.SelectList>'所述,但是我得到了一个不同的错误; 无法将“ System.Collections.Generic.List”隐式转换为“ System.Web.Mvc.SelectListItem” 。
即使Colors.Add(new List<SelectListItem>());
是Colors
。
但是在此之前,我已经在ViewModel中有了它:
List<SelectListItem>
我正在尝试遵循本教程:https://www.youtube.com/watch?v=MPJ9PPCWxoI
答案 0 :(得分:0)
您很有可能在模型顶部的using System.Web.Mvc
名称空间中。尽管SelectListItem
存在,但视图中应该有一个Microsoft.AspNetCore.Mvc.Rendering
名称空间。
因此,有两种方法可以解决此问题:
using System.Web.Mvc;
using Microsoft.AspNetCore.Mvc.Rendering;
SelectListItem
的相关出现更改为Microsoft.AspNetCore.Mvc.Rendering.SelectListItem