我是WCF數據服務的新手。我有一個非常簡單的數據模型。它的一些屬性具有相同的類型,就像這樣: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'是類型爲'IntegrationServices.PropertyIntegrationServices.IntegerSum'和'IntegrationServices.PropertyIntegrationServices.IntegerSum'的IQueryable,而類型'IntegrationServices.PropertyIntegrationServices.IntegerSum'是類型爲'IntegrationServices.PropertyIntegrationServices .IntegerSum」。請確保每個類型層次結構只有一個IQueryable屬性。'。
當我擺脫這兩個屬性之一時,服務開始工作。
我在谷歌搜索這個錯誤消息,但還沒有找到解決方案。 真的不允許在數據模型中擁有兩個相同類型的屬性嗎?如果是這樣,爲什麼?
感謝您的回答。現在我明白我做錯了方式。我現在要做的就是公開兩個返回整數集合的服務操作(用WebGetAttribute標記)。 –
雙倍感謝,正是我所需要的 – Evan