私は、WCF Ria ServicesおよびEntity FrameworkでMVVMパターンを使用してSilverlightアプリケーションを開発しています。 私のメタデータクラスでは、(twoway-databindingで)フロントエンドフォームからエンティティデータを提出すると完全にうまく動作するバリデーションがあります。Silverlight - 単一のプロパティを検証する
今、テキストボックスのLostFocusイベントの1つのプロパティを検証したいとします。
私はviewmodelのクラスでこのコードを試してみました:
コードが実行されますが、何も起こりません。たとえプロパティFirstNameが空であっても例外ではありません(他のプロパティも試しました)。私が言及したように、私はフォームをEFに提出するときに検証作業を行います。
誰もがすべてを提出せずにただ1つのプロパティを検証するヒントを持っていますか?あなたのメタデータで
感謝をuのを助けるかもしれません。しかし、私はすでにこのコードを用意しています。私が提出ボタンを押すと、すべてがうまく動作すると述べました。上のコード(Validator.ValidateProperty)のように、検証プロセスには影響しません。例では、私が試みているようなviewmodelクラスではなく、メタデータクラスでValidatePropertyしか見ていませんでした。 – user1097395
** "**必須の(ErrorMessage =" Please FirstName "と入力してください)" **のような必須プロパティを使用する場合、そのプロパティがnullでないか、必要である必要がありますか? "**はlostfocusで正しく動作します。 .. –
まあ、私はそれが値(必要)を持ってほしいです。そして、私は運がない他のプロパティ(10日しかない日付を検証しています)を試しました。しかし、やはり、すべては提出時に素晴らしい作品です。また、myEntity.myPropertyの値をチェックしてから、値が有効でないことを確認しました。私の質問は、viewmodelコンテキストでValidator.ValidatePropertyを使用できますか?これはメタデータでのみ機能しますか? – user1097395