現在、私のビジネスオブジェクトはIDataErrorInfo
を実装しています。私はASP.NET MVC 3でこれらのライブラリを使用しようとしているので、私はIValidatableObject
を実装するべきであると考えています。IDataErrorInfoとIValidatableObject?
WPFはIValidatableObject
で動作しますか?
DataAnnotationsは画像にどのようにフィットしますか?
現在、私のビジネスオブジェクトはIDataErrorInfo
を実装しています。私はASP.NET MVC 3でこれらのライブラリを使用しようとしているので、私はIValidatableObject
を実装するべきであると考えています。IDataErrorInfoとIValidatableObject?
WPFはIValidatableObject
で動作しますか?
DataAnnotationsは画像にどのようにフィットしますか?
IValidatableObject
は、オブジェクトレベルのエラー全体を検証するためのインターフェイスです。データアノテーションやその他のテクニックを検証することによって、それを実装するのはあなたの責任です。 MVCはデータアノテーションをネイティブにサポートしているため、これ以上のサポートは必要ありません。
逆にwpfのみがIDataErrorInfo
をサポートします。 IValidateObject
またはDataAnnotationsはサポートされていません。
しかし、WpfのDataAnnotationサポートをラップされたオブジェクトに追加するラッパーオブジェクトを実装しました。 IPropertyChanged
の実装も提供しています。私はWPFのために(自動的に基底クラスを経由して)ビューモデルでIDataErrorInfo
とそれを包む、エンティティでIValidatableObject
を実装していますCodePlexの
にValidation Toolkit for Wpf and Silverlightを参照してください。 WPF、MVC、新しいEF CTP5のどちらでも、エンティティはIValidatableObject
になります。