背景: 私は MVC、c#、および .net 全般に非常に慣れていません。Visual Studio 2012 の MVC4 インターネット アプリケーション テンプレートから作業しています。
Html.ValidationSummary() によって生成される順序付けられていないリストではなく、ブートストラップのアラート クラスを使用してモデル バインディング エラーを表示したいと考えています。これは私が思いついたハッキングされた混乱です:
StringWriter writer = new StringWriter();
foreach (ModelState state in ViewData.ModelState.Values) {
foreach (var error in state.Errors) {
writer.Write(error.ErrorMessage);
break;
// In this case the error messages are all the same,
// so I just break out when I get to the first one.
}
}
if (writer.ToString() != "") {
<div class="alert">@writer.ToString()</div>
}
これは Login.cshtml ビューにあり、ログインの失敗時にアラート スタイル ボックスをポップアップ表示します。
カスタム html/css を使用してモデル バインディング エラーを表示する方法について、より良い提案はありますか? 主にグーグルと推測に基づいてこれをまとめただけですが、アドバイスをいただければ幸いです。
この類似した質問が見つかりました: MVC4 でデフォルトの ValidationSummary テンプレートを変更する
提供されたソリューションで柔軟性が得られるかどうかはわかりませんが、間違っている場合はお知らせください。