Microsoft的MVC实现是否与传统的MVC模式不同

And*_*ges 2 model-view-controller asp.net-mvc design-patterns

在关于ASP.NET MVC的网络上的各种文章中,人们都提到微软的MVC实现在某种程度上与"经典"MVC模式不同.

但我从来没有见过任何人进入这个任何细节,乍一看我没有看到ASP.NET MVC是如何从所描述的内容,比方说,任何不同的位置.

所以我的问题是:ASP.NET MVC真的违反了任何MVC模式原则吗?

jga*_*fin 5

问题实际上是MVC是一种松散定义的模式."M"可以解释为"业务领域中的所有内容,从实体到业务逻辑".

我不会说ASP.NET违反MVC,而是松散地解释它.

一些官方MVC示例直接在控制器中使用实体框架,在我看来是不正确的.因为它不是模型和视图之间的桥梁.相反,它负责业务逻辑(即使它是非常基本的逻辑)并将模型信息映射到视图.

ASP.NET MVC有一种称为视图模型的东西,它不是MVC中的M. 它们被用作模型(或模型中的一个或多个实体)与视图之间的适配器,从而接管控制器的一部分责任.