gpt4 book ai didi

c# - MVC 会取代传统的手动创建的 BLL 吗?

转载 作者:太空狗 更新时间:2023-10-29 17:41:07 26 4
gpt4 key购买 nike

我习惯于手动创建 UI、BLL、DAL(有时我使用 LINQ-to-SQL 或 SubSonic 来创建 DAL)。自 MVC 发布以来,我已经使用 MVC 完成了几个小项目。

在这些项目中,我仍然继续手动编写 BLL 和 DAL,然后将它们合并到 MVC 的模型/ Controller 中。我正在寻求优化我在项目上的时间,这似乎是一种过度杀戮和潜在的浪费时间。

问题

推出 SubSonic 等 DAL 并直接在我的 MVC 网络应用程序的模型/ Controller 中使用它是否可以接受?现在模型和 Controller 将充当 BLL。我只是认为这是一个重要的节省时间的方法,不必担心另一层。

更新:

我只是想补充一点,我真正关心的不是 DAL(我经常使用 SubSonic 和 NH),而是关注 BLL。抱歉造成混淆。

最佳答案

MVC 与 n 层架构没有或几乎没有联系。它属于UI层,用于处理与用户的交互。您如何构建应用程序的其余部分...让我们使用正交这个词来告诉您是否使用 MVC。

如果您有业务逻辑层,它会保留。

如果您有数据访问层,它会保留。

不应该使用 Controller 来实现业务逻辑。它基本上是一个路由层,用于决定调用什么操作,重定向到什么路由。一般的建议是让它保持精简,并让它根据路由数据和一些业务逻辑调用做出决定。

此外,模型不等于业务对象。模型是由 View 显示的一组数据,可能包含一些与业务实体无关的辅助数据。

您可以使用 ORM 并用它替换数据访问层。取决于 ORM 如何集成它。借助 EF,您可以将实体直接用作业务对象。

关于c# - MVC 会取代传统的手动创建的 BLL 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2690707/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com