从2层架构迁移到3层架构的方法?

时间:2011-03-04 10:35:04

标签: asp.net architecture

我目前正在开发一个拥有2层架构的asp.net网站。 UI和DAL。这是一个网站,它在触发器中有很多逻辑,并且显示了UI中的大部分逻辑。我想添加第三层,这是一个业务层,以便能够重新使用代码,能够进行单元测试等。

有没有人这样做过,从2级到3级结构,如果你有,那你是怎么做到的。您刚刚开始编写任何带有3层分区的新代码并留下其余的等等吗?我也会考虑MVC等,但我认为这可能太多了。

感谢 niall

1 个答案:

答案 0 :(得分:3)

有两种方法:

  1. 从头开始重写
  2. 摘要界面和抽象类背后的丑陋,并使用工厂或DI。
  3. 例如,当Microsoft设计ASP.NET MVC框架时,他们选择了第二种方法:他们引入了像HttpContextBase,HttpRequestBase等的抽象......

    因此,如果您没有时间从头开始重写所有内容,您可以首先考虑服务层的外观,并开始设计POCO和接口,以便定义这些POCO的操作。然后,UI层将只知道服务层。在此服务层的实现中,您可以使用代表您的实体的CRUD操作的存储库,并在这些存储库的实现中使用您当前拥有的数据访问代码。