MVC 5を使用しているため、ドロップダウンリストを私のモデルにバインドできないようです。 DisplayNameForは正しくバインドされます。ここに私の見解があります。mvc 5 dropdownlistforデータベースから
<div class="row">
<h2>@ViewBag.Title</h2>
<hr />
<div class="col-lg-12" id="div1">
<form class="form-horizontal" role="form" method="post" action="@Url.Action("GetKeys", "Encryption")">
<div class="form-group">
@Html.DisplayNameFor(model => model.CarrierID)
<div class="col-sm-9">
@Html.DropDownListFor(model => model.CarrierID, new SelectList(ViewBag.Carriers, "id", "Name"), "----Select a Carrier----")
@Html.ValidationMessageFor(model => model.CarrierID)
</div>
</div>
</form>
</div>
</div>
モデルは、この
[Key]
public System.Guid EncryptionID { get; set; }
[Required]
[Display(Name = "Carrier Name:")]
public string CarrierID { get; set; }
public IEnumerable<SelectListItem> CarrierNames { get; set; }
[Required]
[Display(Name = "Text to Encrypt:")]
public string txtText { get; set; }
public string Thumbprint { get; set; }
Intelisenseのように見えるモデルはCARRIERID、思考の定義が含まれていないことを示していますか?
いいえ、実行時に同じエラーが発生します。また、メモするために、これはDbSetから取得されます。したがって、ビュー上のモデルはIEnumerable –