私は現在、中規模/大規模のSilverlightアプリケーションを作成しています。
私の現在のアーキテクチャは次のとおりです。
サーバー側には、エンティティフレームワークORMを使用して既存のデータベースから作成されたエンティティオブジェクトがあります。
WCFサービスのメソッドがエンティティオブジェクトを表すDatacontractsをクライアントSilverlightアプリケーションに返します。
私の質問は、シルバーライト側でDatacontractを受け取ったときに、1)このDataContractをMVVMのモデルとして使用する2)データコントラクトをクライアント側のモデルオブジェクトに変換してMVVMで使用する必要があるかどうかです。
オプション1:クライアント側のデータコントラクトは究極のWCFメッセージタイプであるため、モデルとして考えるのが一般的に悪い習慣であるかどうかはわかりません。
オプション2:このオプションにより、サーバーから完全に切り離された状態に保たれ、ビヘイビア駆動アプローチからコードを開発できるようになります。