在我从事的较旧的 Web 项目中,我们曾经在 DAL 中创建模型,在业务逻辑层中添加 DAL 的引用(并重用来自 DAL 的模型,因为它们可以通过 DAL 的引用获得),在服务中添加 BL 的引用(再次重用模型)。实体在所有连续层中都是可传递的。
在具有多个层的 MVC 项目中,模型通常被添加到单独的类库项目中,并在 DAL、业务逻辑、服务、前端等所有层中引用;即使它们是可传递的。
这样做有什么具体原因吗?为什么我们不应该像下面这样在前端绑定通过服务可用的模型
@model List<TestSolution.TestServiceRef.Employee>
代替
@model List<TestSolution.Models.Employee>
在所有层中分别引用模型与从另一个/上一层的引用中使用它相比有什么优势?