私が読んできたことの多くから、データの注釈を使用して検証することが常に望ましいと思われます。 JavaScriptの開発者であるため、私は自動生成されたJavaScriptについていつも気になるわけではありません。DataAnnotationsの自動生成されたjQueryコードがAntiPatternですか?
地域社会の取り組みをご希望ですか?まず、説明しましょう。私が持っている場合は
はただの平らな、単純な形式は、このようなクラスにそのマップをテキストボックス:
public class Person
{
[Required]
public string FirstName { get; set; }
[Required]
public string LastName { get; set; }
[Required]
public DateTime DateOfBirth { get; set; }
[Required]
public string State { get; set; }
}
ビューは非常に簡単(textboxfor年代やeditforのの束)にすることができ、我々は強く型付けされたことができますPersonオブジェクトに対してクライアント側の検証が有効になっている場合、jQueryコードは自動的に生成され、クライアント側の検証を行うためにコードを書く必要はありません。 「うまくいく」というだけでなく、このようなフォームフィールドを扱っているのであれば、このようにするのが理にかなっています。
私は40種類以上のフォームフィールド(ドロップダウン、マルチセレクトボックス、チェックボックスなど)を持つ巨大なフォーム(IRSやイントラネットサイトを考えてみましょう)を扱っていると、非常に面倒です。
- フォームは、他の フォームの可視性をトリガーするフォームフィールドを有することができること:また、あなたが書くJSがあなたのC#にあまり頼ることになる独自のバリデータを書き込むことにつながる、これらのシナリオに遭遇する可能性がありフィールド。
- あなたは[必須]として設定されているdateOfBirthのフィールドを持っている場合は、 がクリックされたとき、それはあなたが 新しいバリデータを作成するために持っているデザイナーと並行して作業することができ
- それが不要になるというボタンがあるかもしれませんC#コード(またはデータ 注釈など)に触れたくありません
- ページの他の検証フレームワークで作業することができます。これらすべての可能性を秘めた
、それはどんな自動を使用しないように理にかなっている(データ注釈から)JavaScriptを生成し、ClientSideValidationをオフにすると、任意のC#の依存せずにjQueryの検証プラグインを使用して、ちょうどHTMLを確認する以外に要素が存在し、選択可能である。
あなたは同意しますか?私は何が欠けていますか?
それを見ていただきありがとうございます。 – SaltProgrammer