2012-04-07 11 views
1

我不得不在我的創建視圖中添加一個手動DropDownList給用戶2'輸入'選項。MVC3驗證視圖仍然無效由於DropDownList

現在,當我來保存信息,即使我的代碼已經驗證不起作用:

<div class="editor-field"> 
      <select name="type" id="type"> 
      <option value></option> 
      <option value="1" id="apple">Apple</option> 
      <option value="2" id="banana">Banana</option> 
      </select> 
      <span class="field-validation-valid" data-valmsg-for="type" data-valmsg-replace="true"></span> 

我如何內置的驗證回到了「Type'field。我在模型類中將其作爲'必需'。

回答

0

您的下拉式名稱和ID應該是您模型的屬性。

<select name="type" id="type"> 

在您的模型中包含類型作爲屬性並使其成爲必需。

public class myModel{ 
    [Required] 
    public string type{get; set;} 
} 

是鍵入C#的關鍵字,我建議你用別的東西,例如「FruitDD」

+0

你總是可以逃脫與'關鍵字@'你的屬性名稱。例如。 '公共字符串@type {get;組; }' – 2012-04-08 10:46:11

+0

這是真的,但最好不要使用保留關鍵字,除非它非常需要。在上述情況下,我覺得他可以使用不同的財產。 – HaBo 2012-04-09 13:07:39

+0

我同意,避免使用關鍵字作爲屬性名稱在設計中很重要,因爲它們會使代碼更難以解釋並導致諸如「@」之類的解決方法。 – 2012-04-09 18:32:51