【问题标题】:OOD Layered Approach for ASP.NET/c# website面向 ASP.NET/c# 网站的 OOD 分层方法
【发布时间】:2009-10-15 10:26:35
【问题描述】:

我正在编写 ASP.NET 网站,在其中我将代码分解为层,例如表单对象类、用于业务逻辑的实体类、用于控制多个实体类的控制器类以及最后的数据访问类。

上述所有类都有各自独立的 dll,因为表单对象和业务类在网站和应用程序 (Exe) 等项目的多个组件中被分解

我有以下疑问

  1. 我想知道我是否按照分层编程采用了正确的方法?

  2. 我们应该在父类的构造函数中还是在函数中创建类的对象;因为在我的情况下,在父类内部需要使用大约 8-10 个子类,所以我应该在父类的构造函数中在哪里创建 clhild 类对象,或者在我使用子对象的父类的函数内部创建 clhild 类对象?

    李>
  3. 如上所述的分层方法,我应该在哪一层创建数据库连接?

请帮帮我?

【问题讨论】:

    标签: c# asp.net oop


    【解决方案1】:

    我不确定这是否有帮助(或回答您的问题),但这是我们在开发过程中构建应用程序的方式。该结构非常适合我们的需求,我们(尝试)采用 DDD 方法。

    DDD Solution Structure http://www.kanebarton.com/images/DomainDesign.png

    【讨论】:

      【解决方案2】:

      I would like to know whether I am doing the right approach

      如果您的意思是从“分层”架构的角度来看,那么我会说是的。这个想法是创建不同层次的责任。在您的情况下,您将应用程序分层,例如:

      • UI 层
      • 业务逻辑层
      • 控制器层 - 可能的改进是将其移至业务逻辑层并使其成为单独的命名空间,即 BusinessLogic.Controllers
      • DAL(数据访问层)

      这似乎很公平。

      你真的应该看看The Repository Pattern。这基本上创建了一个控制器类,它连接到您的数据库(在创建对象时),然后公开将与您的数据库交互的方法(针对该特定类)。您的应用程序也有 MVC 的感觉,您应该考虑使用 ASP.NET MVC Framework

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-07-25
        • 2010-09-22
        • 1970-01-01
        • 2012-07-15
        • 2011-05-10
        • 2011-12-25
        • 2013-10-08
        相关资源
        最近更新 更多