OData:如何在派生类型存储在父表中时查询派生类型?

时间:2015-04-09 16:39:42

标签: c# odata odata-v3

我有以下类结构:

abstract class Person {}
class Employee : Person {}
class Customer : Person {}

我使用一些ORMapper(在我的情况下是XPO)将数据存储在数据库中,这样就可以将Employee和Customer类型存储在基础" Person"数据库表。

然后我使用DevExpress的DevExpress Odata提供程序创建OData V3 Web服务(他们声明它提供完整的odata-v3功能)。所以可能只是与OData相关的问题。

现在,由于我的派生类型存储在父表中,因此在odata Web服务项目中,不会自动生成相应的类型。所以我无法通过使用" isof"来查询它们。功能(或我遗漏了一些东西):

http://localhost:51451/ODataService1.svc/Person?$filter=isof('ODataService1.TestOdata.Employee')&$format=json

如果它存储在父表中,我应该如何仅查询所选派生类型的对象(例如Employee)?

任何可能有所帮助的线索?

1 个答案:

答案 0 :(得分:0)