我第一次检出WCF数据服务和OData,我想知道是否在实体模型中使用继承是不好的做法?它似乎没有得到很好的支持。WCF数据服务和OData中派生的实体类型
例如,我遇到了OData问题,我想在派生类型的属性上进行筛选。但似乎只能过滤基类型属性?
此失败: HTTP:// [本地主机]:8080 /实体$滤波器= startswith(文字, 'BLA')
在任何情况下,是能够更好地创建非衍生的实体类型和有接口的“协调”不同实体类型的属性?
例如:
EntityBase - >标识,的ParentId
笔记本:EntityBase - >标题
注:EntityBase - >文本
或
IEntity - >标识,ParentId
笔记本:IEntity - > ID,的ParentId,标题
注:IEntity - >标识,的ParentId,文字
为什么还在不在5.1.0-RC1支持的格式$标签?
我也注意到LightSwitch似乎不支持域模型中的继承,所以我不会推荐任何人在他们的模型中使用继承:http://connect.microsoft.com/VisualStudio/feedback/details/749933/wcf-data-service-odata – 2012-08-11 10:47:01
如果你的客户端是LightSwitch,那可能是真的。如果你的客户端将是WCF数据服务,或data.js,或ODataLib,或简单的JavaScript,我认为你会很好地使用继承。 – 2012-08-11 16:06:53
为了在Data Services中使用继承,我必须升级到最新版本的库。我使用的是客户端库的5.4版(NuGet),我可以确认继承可以与该版本兼容。 – 2013-05-02 14:12:47