RIA サーバーにはモデル階層がありますが、Silverlight クライアント側モデルが生成されると、階層がフラット化されます。つまり、クライアント側では、すべての型が共通のSystem.ServiceModel.DomainServices.Client.Entity
基本クラスから継承されます。
これは今まで問題ではありませんでした。問題は、Silverlight 5 の暗黙的なテンプレート機能を利用しようとしたときに発生します。この機能では、'DataTemplate' の選択は、すべての継承が洗い流された DataContext のデータ型に基づいています。
これに対する一般的な回避策はありますか? 現時点では、Silverlight 側で厳密にラッパー クラスを作成し、セレクターとして機能させるのが最善だと考えています。その後、ItemsSource をこれらのラッパー クラスのコレクションにバインドできます。これにより、基になるデータに接続する必要があります。