#author("2018-02-13T07:24:53+00:00","default:admin","admin")
#author("2018-09-03T02:45:40+00:00","default:admin","admin")
-[[ASP.NET Core MVC でのモデル検証の概要:https://docs.microsoft.com/ja-jp/aspnet/core/mvc/models/validation]]

-[[ASP.NET Core × jQuery Validationでエラーを表示する:https://qiita.com/takasan/items/205de7ac4a5f3567d7c6]]
-[[ASP.NET Core におけるバリデーションの基本:http://kuttsun.blogspot.jp/2017/11/aspnet-core_7.html]]

-[[ASP.NET Core 2.0 MVC Model Validation:https://www.codeproject.com/Articles/1204077/ASP-NET-Core-MVC-Model-Validation]]
-[[ASP.NET Core MVC Client Data Validation - Part 2: jQuery validation:https://www.pluralsight.com/guides/microsoft-net/asp-net-core-mvc-client-data-validation-part-2-jquery-validation]]

-[[ASP.NET Core で複雑なバリデーションをする:http://www2.gyafuuuun.com/2017/02/asp-net-core-%E3%81%A7%E8%A4%87%E9%9B%91%E3%81%AA%E3%83%90%E3%83%AA%E3%83%87%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E3%81%99%E3%82%8B/]]


*基本 [#u2a73898]
**クライアントサイド検証 [#gfac994f]
***必要なライブラリ [#k32c9504]
以下の2つの方法でライブラリをインクルード

-手動インクルード
以下のソースを<script>タグでインクルード
--[[jquery-validation:https://github.com/jquery-validation/jquery-validation]]
--[[jquery-validation-unobtrusive:https://github.com/aspnet/jquery-validation-unobtrusive]]

-フォームを含む *.cshtml の最後に以下を追記
 @section Scripts {
     @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
 }
--これにより、Views/_ValidationScriptsPartial.cshtml の内容がレンダリングされる

***Viewの変更 [#z8ad21ec]
-エラーメッセージ表示:モデル検証のみ
 <div asp-validation-summary="ModelOnly" class="text-danger"></div>
-エラーメッセージ表示:全て(カスタム検証も含む)
 <div asp-validation-summary="All" class="text-danger"></div>

**サーバサイド検証 [#i827eae5]

**カスタム検証 [#g8e78f03]
-[[ASP.NET Core で複雑なバリデーションをする:http://www2.gyafuuuun.com/2017/02/asp-net-core-%E3%81%A7%E8%A4%87%E9%9B%91%E3%81%AA%E3%83%90%E3%83%AA%E3%83%87%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E3%81%99%E3%82%8B/]]

***ValidationAttribute [#c1962f40]

***IValidatableObject [#cf47f6fa]

*アノテーション [#ffea172b]
-[[[Required] and [BindRequired] in ASP.NET Core MVC:https://www.strathweb.com/2017/12/required-and-bindrequired-in-asp-net-core-mvc/]]
-[[Required string attribute with null value gives IsValid=true in ASP.NET Core 2 Razor Page:https://stackoverflow.com/questions/47118980/required-string-attribute-with-null-value-gives-isvalid-true-in-asp-net-core-2-r]]
-[[ASP.NET MVC でテキストボックスとラベルに別の書式を使用する:http://redwarrior.hateblo.jp/entry/2016/08/22/090000]]

-[[よく使われる入力検証をまとめてみる:http://blog.shibayan.jp/entry/20110708/1310132392]]

-[[ASP.NET MVCのモデルでよく使う属性(アノテーション)リスト:https://qiita.com/mrpero/items/607c31895d77815a77cb]]

**必須項目 [#o33843a3]
-[Required]

**文字数制限 [#ie6c3e34]
-[MaxLength([Length], ErrorMessage = "[Message]")]

**数値範囲制限 [#hc81c678]
-[Range([MIN], [MAX], ErrorMessage = "[Message]")]

*エラーメッセージ [#y9e038f2]
**エラーメッセージの表示 [#m06b3551]
***個別出力 [#fd653aeb]
 <span asp-validation-for="[モデルのプロパティ名]" class="text-danger"></span>

***一括出力 [#ve7f3bef]
-モデル検証のみ
 <div asp-validation-summary="ModelOnly" class="text-danger"></div>
-カスタム検証も込みで全て
 <div asp-validation-summary="All" class="text-danger"></div>

**ローカライゼーション [#rf3dac67]
-[[ASP.NET Core のValidationエラメッセージを一括で日本語化する:https://qiita.com/upopo21/items/51089df6e14e658c15be]]
-[[ASP.NET Coreでエラーメッセージを日本語で表示する:https://qiita.com/h0ge/items/b7ffd65d0f11ac6382fd]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS