3

ASP.NET MVC を読んでいると、ビジネス ルールがモデルに関連付けられていて、UI が一連のエラーを表示し、無効な入力に関連付けられたフォーム要素にフラグを立てるだけの検証の素晴らしい例に出くわしました。すべてのフォームに独自の検証を実行させるのではなく、このロジックを 1 か所に保持することは非常に理にかなっていると思います。

ASP.NET Web アプリケーション プロジェクト (Web フォーム) を使用して、この分離をエレガントな方法で実現することは可能ですか? 検証ルールをビジネス ロジック レイヤーに保持でき、検証を実行して一連のエラーを返すメソッドを使用できます。しかし、UI 側で問題のあるコントロールにフラグを付ける良い方法がわかりません。

MVC では、フォーム要素とモデルはプロパティ名によって暗黙的にリンクされます。ASP.NET の UI は、モデルの一意のプロパティ名を (ID/名前またはカスタム属性として) 参照する必要がありますか? コントロール名からプロパティ名への手動で生成されたマッピングに UI がアクセスできるようにする必要がありますか?

4

2 に答える 2

1

.NET 4.0のWebFormsでデータ注釈に関するいくつかの改善が利用できるという話を聞いたことがあると思いますが、オンラインで検索しようとした後、夢を見たと思い始めました。

私は「彼自身を転がした」男のこの投稿を見つけましたが:

http://adventuresdotnet.blogspot.com/2009/08/aspnet-webforms-validation-with-data.html

于 2009-10-07T16:48:40.227 に答える
1

私がそれを行うのが好きな方法は、画面上のコントロールにバインドされたCustomValidatorsを作成し、OnServerValidateイベントでBL検証を呼び出すことです。そうすれば、私の検証ロジックは1か所にとどまります。

それが役立つことを願っています

于 2009-10-07T16:51:03.173 に答える