Wcf 如果我想要OData+EF+我自己的合同,我需要定制数据提供者吗?

Wcf 如果我想要OData+EF+我自己的合同,我需要定制数据提供者吗?,wcf,entity-framework,entity-framework-4,odata,wcf-data-services,Wcf,Entity Framework,Entity Framework 4,Odata,Wcf Data Services,我正在使用Entity Framework EF为我的公司制作一个OData WCF数据服务端点 我们已经意识到标准OData+EF将我们与数据库联系得太紧密了]。所以我希望在EF和OData之间添加另一层 所以我的问题是:我需要做一个测试,还是有一种方法可以将OData连接到EF?我读过关于反射提供者的文章,它似乎只适用于内存中的东西。我不知道如何将其连接到EF加载数据的方式 注意:我的OData服务是只读的。我不需要它们是可更新的。据我所知,您的问题反射提供程序应该满足您的所有要求。您只需要

我正在使用Entity Framework EF为我的公司制作一个OData WCF数据服务端点

我们已经意识到标准OData+EF将我们与数据库联系得太紧密了]。所以我希望在EF和OData之间添加另一层

所以我的问题是:我需要做一个测试,还是有一种方法可以将OData连接到EF?我读过关于反射提供者的文章,它似乎只适用于内存中的东西。我不知道如何将其连接到EF加载数据的方式


注意:我的OData服务是只读的。我不需要它们是可更新的。

据我所知,您的问题反射提供程序应该满足您的所有要求。您只需要创建一些类,这些类将使用自定义对象的IQueryable公开属性。反射提供程序不仅仅处理内存,它只需要一个类来探索反射,但该类的实现取决于您。Linq到Sql上下文也通过反射提供程序公开,它们肯定不仅仅是内存中的内容

您将遇到的问题是将对自定义对象的查询转换为对实体的查询,因为这无法以本机方式进行转换