具有实体和RIA Services / Silverlight的自定义类

时间:2012-02-02 11:15:31

标签: wcf silverlight wcf-ria-services

我有一个看起来像这样的课程:

[DataContract]
public class TestBatchWithHistoryResult
{
    [Key]
    [DataMember]
    public int Id { get; set; }
    [DataMember]
    public string Name { get; set; }
    [DataMember]
    public string Description { get; set; }
    [DataMember]
    public string LastRequestedBy { get; set; }
    [DataMember]
    public DateTime? LastRun { get; set; }
    [DataMember]
    public Collection<string> LastConfigurations { get; set; }
    [DataMember]
    public TestBatch Entity { get; set; }
}

当我构建网站和Silverlight项目时,发现未在Silverlight端的“自动生成”代码中创建Entity属性,但所有其他属性都存在。

什么可能阻止创建Entity属性?

由于

迈克尔

2 个答案:

答案 0 :(得分:0)

如果您的任何服务未引用数据协定,则该协议将不存在。仅生成引用的数据协定。如果它没有被引用但它应该是(即如果它是从返回的类型继承的类型,并且将在某个时候返回)使用ServiceKnowTypeAttribute在服务契约的开头声明它。

答案 1 :(得分:0)

对于要在客户端创建的子实体,您需要有一个服务方法在服务器端公开该实体类型,例如:

public IQueryable<TestBatch> GetTestBatches(){}

您还需要在属性上包含Include属性:

[Include]
public TestBatch Entity {get; set;}