検証をチェックするコントローラーの更新アクションがあります。
if (!ModelState.IsValid) return View(InitialiseModel(model));
私のビューはUIHelpersを使用しています:
<%=Html.EditorForModel("MyModelTemplate") %>
モデルに「Title」という属性を持つ String プロパティがあります [必須]:
[Required]
[DisplayName("Resource title")]
public string Title { get; set; }
このプロパティの UI テンプレートは次のようになります。
<%= ViewData.ModelMetadata.IsRequired ? "*" : "" %>
<label for="<%=ViewData.ModelMetadata.PropertyName %>">
<%=ViewData.ModelMetadata.GetDisplayName() %>
</label>
<input type="text" id="<%=ViewData.ModelMetadata.PropertyName%>"
name="<%=ViewData.ModelMetadata.PropertyName%>" value="<%=Model%>" />
<%= Html.ValidationMessage(ViewData.ModelMetadata.PropertyName, "*") %>
問題は、ViewData.ModelMetadata.IsRequiredが常に false であることです。また、検証メッセージは表示されません。私は何が欠けていますか?