私は顧客のためのモデルを持っています
public class Customer
{
public virtual int CustomerID { get; set; }
[Required]
public virtual string CustomerName { get; set; }
[Required]
public virtual string Title { get; set; }
[Required]
public virtual string FirstName { get; set; }
public virtual string LastName { get; set; }
// Cont..
}
public ActionResult Create(Customer customer)
のアクションである顧客作成フォームを投稿すると、CustomerController
に対してエラーが発生しModelState
ます。たとえば...私のコードが以下のような場合。
[HttpPost]
public ActionResult Create(Customer customer)
{
customer.Title = "Mr"; // This is what I set for ensuring the field has value
if (ModelState.IsValid)
{
// Code to save customer entity
}
// else..
}
私のMVCビューでは、顧客タイトルにエラーが表示されます
たとえば、if (ModelState.IsValid)
上記のコードからその部分を削除すると、顧客エンティティは正常に保存され、データベースにレコードを表示できます。
ここでの問題は何でしょうか?
編集 :
顧客タイトルを次のように渡すIEnumerable<SelectListItem>
ViewData["CustomerTitles"] = GetCustomerTitles();
ビュー内のコード
div class="editor-field">
<%: Html.DropDownList("CustomerTitles")%>
<br /><%: Html.ValidationMessageFor(model => model.Title) %>
</div>