【发布时间】:2015-01-08 05:46:41
【问题描述】:
在 1 层应用程序(即 Mvc)中,您会获得一个名为 models 的文件夹,然后在其中构建和存储您的类,我知道当涉及到我所阅读的三层应用程序时,存储业务层(第 2 层)内部的模型,以及 UI(第 1 层)我将添加对第 2 层的项目引用,这将允许我使用模型并调用方法。
从第二层的角度来看,它会调用数据层(第三层)并对数据库执行 crud 操作,但是数据层需要来自业务层的模型,所以当我尝试从数据层添加项目引用时到业务层我得到错误
无法添加对“业务层”的引用,将此项目添加为引用会导致循环依赖
据我所知,已经通过业务层对数据层进行了参考
我将如何解决这个问题?是否在数据层中创建其他模型并使用数据库中的结果填充它们并将其传递回业务层,然后再将其传递回 UI?我对此有点困惑。
** 更新**
从我读过的数据层到业务层中的参考模型,我需要做模型映射,我的模型映射会很大,所以我正在考虑包括一个共享库的第四层这将包含所有模型,数据层和业务层可以在需要时访问模型。
【问题讨论】:
-
我认为如果您首先明确层和层之间的区别会很好。 stackoverflow.com/questions/120438/…
-
您可以阅读 MVP (Model-View-Presenter) 例如,这是一种 3 层方法。
标签: c# asp.net-mvc-5 three-tier