私は 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 ブラウザーでサービスに移動すると、次のエラー メッセージが表示されます。
サーバーでリクエストの処理中にエラーが発生しました。例外メッセージは、「プロパティ 'HouseholdGoodsSums' および 'StructureSums' は、タイプ 'IntegrationServices.PropertyIntegrationServices.IntegerSum' および 'IntegrationServices.PropertyIntegrationServices.IntegerSum' の IQueryable であり、タイプ 'IntegrationServices.PropertyIntegrationServices.IntegerSum' はタイプ 'IntegrationServices.PropertyIntegrationServices の祖先です」です。 .IntegerSum'. 型階層ごとに IQueryable プロパティが 1 つだけであることを確認してください。
これら 2 つのプロパティのいずれかを取り除くと、サービスが機能し始めます。
Google でこのエラー メッセージを検索しましたが、解決策が見つかりませんでした。データ モデルで同じタイプの 2 つのプロパティを持つことは本当に許可されていないのでしょうか? もしそうなら、なぜですか?