2011-08-16 60 views
2

我遇到了ASP.NET MVC3客戶端驗證的問題。ASP.NET MVC3客戶端驗證的奇怪問題

我的觀點是基於我用下面的字段創建一個視圖模型爲Required

public class AppointmentFeedbackViewModel_Validation 
{ 

    [Required] 
    public string AttendeeName { get; set; } 

    [Required(ErrorMessage = "Notes must be filled in")] 
    public string Notes { get; set; } 

    [Required(ErrorMessage = "Appointment status must be filled in")] 
    public int AppointmentStatusId { get; set; } 

    [Required] 
    public int StarId { get; set; } 

} 

不幸的是,一個完全不相關的領域SubStatusId上提交表格的要求出現。

此下拉列表從控制器

new List<EF.ViewModels.OpportunityConnectTypeViewModel>(); 

傳遞了一個空的List並標記了如下

<div class="display-label-styled"> 
    Please select another reason for this outcome 
</div> 
<div class="display-field-styled"> 
    @Html.DropDownListFor(model => model.SubStatusId, new SelectList(ViewBag.SubStatus, "ID", "StatusName")) 
    @Html.ValidationMessageFor(model => model.SubStatusId) 
</div> 

如果任何人都可以對這個有何啓示我,我真的欣賞它。

+0

你能展示整個視圖嗎?它是否強類型?去哪個班?我們需要了解視圖的模型類型是什麼?我懷疑它不符合你的驗證模型。 – BZink

回答

4

是SubStatusId一個int? Int是隱含需要的。如果你不想要它,把它聲明爲一個空的int:

public int? SubStatusId;