没有业务逻辑层的ASP.NET2.0应用程序?

没有业务逻辑层的ASP.NET2.0应用程序?,asp.net,business-logic-layer,objectdatasource,Asp.net,Business Logic Layer,Objectdatasource,如果ASP.Net 2.0应用程序没有以下BLL(业务逻辑层),是否“可以接受” SQL Server数据存储和存储过程 连接到存储过程的数据链路层(强类型表适配器) 表示层ASPX页面,带有代码隐藏和ObjectDataSource,用于直接连接到DLL 即使业务逻辑在演示文稿的代码中是完全可验证的,BLL是否总是可取的?不使用BLL的潜在缺点是什么?与其他任何东西一样,它是环保的,取决于系统的使用。你需要问自己的问题是: 是否会积极发展 这是否将在多年的过程中使用并扩展 应用程序的扩展是未知

如果ASP.Net 2.0应用程序没有以下BLL(业务逻辑层),是否“可以接受”

  • SQL Server数据存储和存储过程
  • 连接到存储过程的数据链路层(强类型表适配器)
  • 表示层ASPX页面,带有代码隐藏和ObjectDataSource,用于直接连接到DLL

  • 即使业务逻辑在演示文稿的代码中是完全可验证的,BLL是否总是可取的?不使用BLL的潜在缺点是什么?

    与其他任何东西一样,它是环保的,取决于系统的使用。你需要问自己的问题是:

  • 是否会积极发展
  • 这是否将在多年的过程中使用并扩展
  • 应用程序的扩展是未知的,因而是无限的吗
  • 实际上,这归结于懒惰。您想花多少时间从UI重新设计系统?因为没有业务层意味着UI中的规则可能会在多个页面上重复


    然后,如果这是一个概念证明或简短的演示或课堂项目。走捷径。

    只要你了解后果,这是可以接受的。拥有BLL的主要原因是在整个应用程序的其他地方重用该逻辑


    如果您在表示代码中有所有验证逻辑,那么您真的很难在应用程序的其他地方重复使用。

    可以接受吗?取决于你问谁以及你的要求是什么。这个应用程序是你和其他一些人使用的内部一次性应用程序吗?也许这已经足够好了。如果它是一个生产就绪的企业应用程序,将在未来几年中不断增长和维护,那么您可能希望在构建一个可维护的应用程序之前投入更多的精力


    关注点分离是构建可维护应用程序的关键设计技术。通过将表示逻辑、业务逻辑和数据访问逻辑混合在一起,最终可能会形成一个非常脆弱、难以更改的应用程序体系结构。

    这取决于具体情况。如果您的业务逻辑在单击事件和页面加载中,则不可接受

    似乎您的业务逻辑在DAL中的某个地方(例如,存储过程等),只要您保持一致,就可以了。只要您非常非常确定您的客户机将始终使用SQL Server,那么这种方法就不是问题


    我认识一位同事,他所有的业务逻辑都在存储过程中,他的观点大多是数据库后端的瘦客户机:他销售的产品非常成功。但这只是因为他非常赞同它。

    如果应用程序是通用的,那么业务逻辑层也可以用于其他完整的应用程序中。比如,我通常在其他应用程序中使用CMS相关的BLL类