集中数据访问:在类库中包装ORM还是使用Web服务?

时间:2009-09-16 02:59:00

标签: asp.net database web-services dll

我正在尝试集中我小公司内的数据访问。我希望在类库或Web服务中表示的数据将由ASP.NET Web应用程序(Web窗体和MVC),ASP.NET桌面应用程序和Sharepoint(MOSS 2007)Web部件使用。

这是所有内部的东西,所以是否有必要寻求一个完整的Web服务(我在考虑ADO.NET数据服务)或者我应该只设置一个使用实体框架的类库项目(包含在最有可能的存储库层??

1 个答案:

答案 0 :(得分:3)

由于您在谈论内部使用,我认为您没有任何限制从任何端点应用程序连接到您的数据库。在那种情况下,我更喜欢类库与Web服务的直接交互。

如果您的任何应用程序迁移到数据库调用有问题的地方(即通过Internet),则Web服务访问层很不错。

我发现直接针对数据库的任何库都可以比传递Web服务更容易对数据库交互进行故障排除。

在这些/或场景中,我更喜欢简单。使用Entity Framework从类lib开始。如果您发现需要Web服务,请使用ADO.Net Web服务移动到该服务(甚至将您的“Phase 1”EF库包装在WCF服务中。)