Entity Framework で使用するためにセットアップした POCO モデル クラスがいくつかあります。DbContextのValidateEntityオーバーライドでいくつかの検証を行います。DbEntityValidationResult関数からa を返すと、ValidateEntity実行時にいくつかDbValidationErrorの s を追加していることがわかります。次のコードを使用して、関数のModelState内部でこれらのエラーを確認することもできます...Controller
catch (DbEntityValidationException ex)
{
foreach (var entity in ex.EntityValidationErrors)
{
foreach (var error in entity.ValidationErrors)
{
ModelState.AddModelError(error.PropertyName, error.ErrorMessage);
}
}
}
しかし、何らかの理由で、Razor ビューで目的のプロパティ名に対してこれらのエラーが表示されません。次のようなビューモデルを使用しています...
public class CharacterCreateModel
{
private Character m_character;
#region Properties
public Character Character
{
get
{
return m_character;
}
set
{
m_character = value;
}
}
#endregion
}
そして、このCharacterCreateModelビュー モードを使用して強く型付けされた Razor ビューでは、標準@Html.TextBoxForなどを使用します。
モデルからの検証エラーはCharacter正しく表示されますが、ValidateEntity関数からの検証エラーはそのプロパティ名に対して表示されません。
理由はありますか?