gpt4 book ai didi

c# - 业务逻辑层是否需要自己的模型

转载 作者:行者123 更新时间:2023-11-30 17:36:05 26 4
gpt4 key购买 nike

我正在使用 asp.net mvc 做 3 层应用程序,我想按照建议做所有事情。

所以我为业务逻辑完成了MvcSample.Bll,为数据完成了MvcSample.Data,为网站完成了MvcSample.Web

Data 中,我有我的 edmx 文件(我使用的是数据库优先方法)和我的存储库。在 Bll 中,我正在做将在网络中调用的服务。

所以我的问题是:我应该在 Bll 中编写其他模型还是使用在 edmx 文件中生成的模型?

最佳答案

这在很大程度上取决于您的应用程序试图解决的问题类型。

根据我的经验,业务逻辑很少直接从 Entity Framework 返回模型对象。此外,接受这些作为论据可能不是最好的主意。

Entity Framework 模型代表您的关系数据库。因此,它的定义包含许多您的业务逻辑不应公开的内容,例如导航属性、计算属性等。当接受您的模型对象作为参数时,您可能会注意到许多属性未被特定业务逻辑方法使用.在许多情况下,它会使开发人员感到困惑,并且是错误的来源。

总而言之,如果您的应用程序是快速原型(prototype)、概念验证或简单的 CRUD 软件,那么使用 EF 模型类可能就足够了。但是,从实用的角度考虑定制业务逻辑模型/dto 类。

关于c# - 业务逻辑层是否需要自己的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40211638/

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