我是 WCF 数据服务的新手。我有一个非常简单的数据模型。它的一些属性具有相同的类型,如下所示:
public IQueryable<IntegerSum> HouseholdGoodsSums
{
get
{
return GetData<IntegerSum>(DefaultProgramID, "rHouseholdGoodsPrice", IntegerSumConverter);
}
}
public IQueryable<IntegerSum> StructureSums
{
get
{
return GetData<IntegerSum>(DefaultProgramID, "rStructurePrice", IntegerSumConverter);
}
}
IntegerSum 是一个非常简单的类:
[DataServiceKey("Amount")]
public class IntegerSum
{
public int Amount { get; set; }
}
当我在 Web 浏览器中导航到我的服务时,我看到以下错误消息:
服务器在处理请求时遇到错误。异常消息是 'Property 'HouseholdGoodsSums' 和 'StructureSums' 是 IQueryable 类型的 'IntegrationServices.PropertyIntegrationServices.IntegerSum' 和 'IntegrationServices.PropertyIntegrationServices.IntegerSum' 并且类型 'IntegrationServices.PropertyIntegrationServices.IntegerSum' 是类型 'IntegrationServices.PropertyIntegrationServices 的祖先.IntegerSum'。请确保每个类型层次结构只有一个 IQueryable 属性。'。
当我摆脱这两个属性之一时,服务开始工作。
我在 google 中搜索了此错误消息,但没有找到解决方案。数据模型中真的不允许有两个相同类型的属性吗?如果是这样,为什么?