0
在我的項目,我們有渲染HTML像一些編輯模板如下:如何在MVC 3中包含內部模型的驗證?
<table>
<tr>
<td><image src="/SIIJYP/Content/Images/lupa.bmp" id="@(controlId)img"/></td>
<td>
@Html.Hidden("Id", Model.Id)
@Html.TextBox("Fullname", Model.Fullname, new {@readonly="readonly"})
</td>
</tr>
</table>
這看起來有點像一個文本框旁邊,並用它來讓搜索和從人,選擇人員搜索彈出窗口。使用該模板
模型具有屬性如下:
public class MyModel
{
[Required(ErrorMessage="This value is required")]
[UIHint("PeopleSearch")]
public Person Responsible { get; set;}
}
所有作品完美,模板propertly渲染,值被公佈,驗證模型等。然而,當用戶沒有選擇一個人,帖子,不會顯示預期的錯誤消息「此值是必需的」。
當用戶提供任何值時,我們應該如何修改我們的模板以顯示消息?
UPADATE:人模型定義:
public class Person
{
public long Id { get; set;}
public string Fullname { get; set;}
}
我需要的是一種方式,讓我用RequiredAttribute標籤在負責任的屬性來驗證這兩個:Id和全名具有值並顯示錯誤否則在文本框下的消息。
你說該模型是有效的,但後來說,該錯誤信息不會顯示。那麼客戶端驗證失敗還是服務器端?或兩者?你是否錯過了@ Html.ValidationMessage? –
在服務器中,ModelState.IsValid爲False,但不顯示錯誤消息 – lontivero