通过WCF交付EF模型的最佳方式是什么?

通过WCF交付EF模型的最佳方式是什么?,wcf,entity-framework,Wcf,Entity Framework,我有一个新项目正在进行中,我正在考虑通过WCF服务使用EntityFrameworkV4 我想知道人们对EF通过WCF传输数据的最佳方式有什么看法?我应该使用EF生成的类还是将它们打包成其他类 消费应用程序目前将是web,但将来可能会有其他应用程序,如Silverlight、Windows、mobile等。对于Silverlight,我建议使用WCF RIA服务。对于web,您可以使用ADO.NET数据服务 或者,您可以稍微降低一点级别,编写自己的基本WCF服务,并将简单的POCO作为传输对象呈

我有一个新项目正在进行中,我正在考虑通过WCF服务使用EntityFrameworkV4

我想知道人们对EF通过WCF传输数据的最佳方式有什么看法?我应该使用EF生成的类还是将它们打包成其他类


消费应用程序目前将是web,但将来可能会有其他应用程序,如Silverlight、Windows、mobile等。

对于Silverlight,我建议使用WCF RIA服务。对于web,您可以使用ADO.NET数据服务


或者,您可以稍微降低一点级别,编写自己的基本WCF服务,并将简单的POCO作为传输对象呈现。此方法是代码最密集的方法,不适用于胆小的人。

在EF 3.5中,我的建议是永远不要返回EF实体。而是返回一个DTO,其属性与EF实体的属性相对应


在EF4.0中,他们围绕POCO类和其他方面做了大量工作。我对他们所做的事没有跟上进度。如果可以让EF生成不向客户机公开实现依赖项的实体类,则可以返回这些实体类。NET 3.5类派生自特定于EF的类,基类属性泄漏到客户端代理中。您不需要这样做。

我的评论仅适用于EF v1.0!我应该引用这个版本。我没有用v4做任何事情。我将等待最终版本。