Web服务和实体框架?

时间:2015-02-02 09:09:26

标签: c# entity-framework web-services

我有一个问题Web-Serivces可以WCFSOAPREST等与实体框架一起工作?

我创建了一个项目,其中我使用了实体框架的数据库第一种方法,现在它运行良好。但现在我需要在项目中集成Web-Service

所以我想知道Web-Services是否适用于我现有的Entity Framework结构,否则我将不得不删除所有实体框架并仅创建Web-Services

2 个答案:

答案 0 :(得分:2)

这可能取决于您如何设计现有架构,但基本上,您应该能够在您拥有的基础上构建新层,以通过Web服务公开现有数据。

示例:想象一下,您使用EF从Db获取苹果。如果您在现有解决方案之上添加或使用方法GetApplesFromDB()的现有接口,那么当调用服务本身中的方法GetApples()时,您的服务可以调用该方法。

你必须在这里添加的东西是服务对象/实体。换句话说,如果GetApplesFromDB()返回Apple类型的对象,那么您应该在服务中创建相应的类型(如ServiceApple),并从Apple映射到ServiceApple,并将后者返回给客户。这样,你仍然可以保持EF相关和服务相关的东西有点分开。

答案 1 :(得分:1)

我不知道你是否对此感到满意,但你可以像使用Entity Framework一样使用Repository模式。然后在存储库中,您将决定要求WCF或直接EF的数据源类型。

http://www.asp.net/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application