如何在 asp.net MVC 的两个不同项目中处理 Service 和 ViewModels?

How to handle Service and ViewModels in 2 different projects in asp.net MVC?

我的项目刚刚遇到问题。我有我的 ViewModels 所在的 MVC 网站,在第二个项目中,我有 BuisnessLogic(services),在它从数据库到视图或周围的其他方式之前,我有所有有趣的逻辑。

之前,我的 ViewModels 与我的服务一起位于 Web 项目之外,但现在我将它们移入 Web 项目后,我的服务崩溃了,因为我的服务曾经使用 return ViewModels 而它们不再由于循环依赖,可以获取它们,因为网站需要获取服务方法,而服务需要视图模型。所以基本上我现在很困惑,不知道该走哪条路。

我是否应该将 Services 与 ViewModels 一起移动到网站项目中?或者我误解了 MVC 中服务的目的?或者也许还有其他方法可以将服务与 Web 项目分开?

对此没有官方记录的方法或标准的最佳实践。它是由你决定。有些人喜欢 MVC,其他人则认为它会创建无组织的代码。只需维护 3 层架构,就不会出错。

MVC + 3 tier; where ViewModels come into play?