Silverlight 4.0 アプリケーションで作業しており、RIA サービスを使用しています。サーバー側に、DataContract および DataMember 属性が適用されたクラスを作成しました。
DomainService は、このクラスをクエリ結果として公開し、クライアントでコードを生成します。しかし、どういうわけか、クラスのすべてのプロパティのコードを生成するわけではありません。タイプ guid、string、int、bool などのプリミティブ プロパティは正常に生成されますが、独自の複雑なタイプのプロパティがある場合、そのプロパティはクライアントで作成されません。
問題のクラスは次のとおりです。
[DataContract]
[KnownType(typeof(SummaryGroup))]
public class SummaryDataSet
{
public SummaryDataSet()
{
}
[KeyAttribute]
[DataMember]
public Guid Guid { get; set; }
[DataMember]
public SummaryGroup SummaryGroup { get; set; }
}
Guid プロパティは、クライアント上で問題なく作成されます。SummaryGroup プロパティはクライアントで作成されません。SummaryGroup のコードは次のとおりです。
[DataContract]
public class SummaryGroup
{
public SummaryGroup()
{
}
[KeyAttribute]
[DataMember]
public Guid Guid { get; set; }
[DataMember]
public string Name { get; set; }
[DataMember]
public int Sequence { get; set; }
}
両方のクラスが同じネームスペースにあります。
質問: クライアントで SummaryDataSet の SummaryGroup プロパティが作成されないのはなぜですか? これを修正するにはどうすればよいですか?