ビジネスアプリケーションでSilverlight+EntityFramework+RIAサービスを使用しています。基盤となるデータベーステーブルには、HumansテーブルとHumanAddressesテーブルが含まれます。すべての人間は、さまざまなタイプ(自宅、仕事、出生地など)の1つ以上の住所を持つことができます。タイプ「ホーム」のアドレスが常に少なくとも1つ存在する必要があります。
UIを使用すると、送信する前に、特定の人間の新しいいくつかのアドレスを編集、削除、および追加できます。これらの変更が予測されたルールに違反しているかどうかを確認するために、検証を実行する必要があります。これを行うための最良の方法は何ですか?
CustomValidationAttributeを使用してみましたが、(AFAIK)エンティティレベルの検証のみが許可され、複数のエンティティ間の検証は許可されません。一部のエンティティは削除され、その他は追加または変更されます。