我能使用的EF-WCF提供数据服务的复杂数据类型没有告诉EF呢?(Can I use a compl

2019-10-17 15:42发布

我使用的是实体框架提供的WCF的DataService以露出的OData端点。 我想创建一个服务操作,返回一个新类型。 但我得到:

异常消息为'无法加载的元数据返回类型'System.Linq.IQueryable 1[MyNamespace+MyNewType]' of method 'System.Linq.IQueryable 1 [myNameSpace对象+ MyNewType] FlightHours()'。'。 请参阅服务器日志的更多细节。

我怎样才能让DataService在知道我希望它神交MyNewType? 我必须hackily作出的EF DataContext的假实体,或在某种程度上可我只是“补充”的呢? 这篇文章想出了破解 ,但我希望情况发生了变化或者说他们错过了什么。

相关链接更新:

  • 我认为WCF DataService的实体框架:时间跨度的支持就迎刃而解了同样的方式。
  • 这MSDN的讨论意味着存在的反思和自定义源这样的方法,但没有提及EF的。
  • 2013年6月更新:由于@dgorissen谁发现了这个可能的反例: WCF数据服务5.0解决方法返回波苏斯? 我还没有机会测试此我自己,我不知道为什么它会工作,但也许它会...

Answer 1:

目前还没有任何其他办法,而不是教这样的类型存在EF。 当您使用EF提供商WCF DS,整个元数据来单从EF,WCF DS不会修改它在任何(有意义)的方式。



文章来源: Can I use a complex datatype with an EF-provided WCF Data Services without telling EF about it?