如何使用现有的3层DAL-BLL-UI应用程序并将DIAL分离到不同的服务器?

时间:2013-01-29 10:38:45

标签: asp.net database security data-layers

我有一个安装在一个Web服务器上的现有3层应用程序(DAL-BL-UI)。 Web服务器使用Framework 4 ADO.NET直接与数据库服务器(MSSQL)通信。更改现有应用程序以不直接与数据库服务器通信的最快方法是什么。我想在Web和数据库服务器之间添加一个“中间服务器”,而代码更改最少。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

ADO.NET使用连接字符串连接到数据源。默认连接字符串在Web.config中定义。 DAL将使用它来连接数据库。只要在防火墙等上打开了正确的端口,ado.net连接的服务器就可以在任何地方使用。

如果您的dal位于单独的程序集中,那么您可以编写一个引用DAL.BLL的简单DAL Web应用程序,并将所需的方法和对象公开为Web服务 - 使用RESTFUL方法,SOAP,WCF,简单ASHX - 无论你最喜欢什么。然后在您的原始应用程序中开发一个新的DAL,而不是使用ADO.NET,消耗Web服务。保持DAL接口相同,这样您就可以在不更改任何BL或UI代码的情况下切换新DAL。

WCF Dataservices可能是您的答案 - 取决于您想要进行多少重构 - http://msdn.microsoft.com/en-us/data/bb931106