(1)什么是ASP.NET MVC?
HttpHandler 是 ASP.NET 的底层机制,如果直接使用 HttpHandler 进行开发难度比较大,工作量大。因此提供了 ASP.NET MVC, ASP.NET WebForm 等高级封装的框架,简化开发,他们的底层仍然是实现了 HttpHandler, HttpRequest 等这些东西。比如 ASP.NET MVC 的核心仍然是实现了 IHttpHandler 接口的 MVCHandler。
(2)ASP.NET WebForm 和 ASP.NET MVC 的关系?
都是对 HttpHandler 的封装框架,ASP.NET WebForm 是微软为了让开发ASP.NET 像开发 WinForm 一样傻瓜化而发明的框架,有很多缺点;ASP.NET MVC 采用了 MVC 的思想,更符合现代项目的开发,因此 ASP.NET MVC 在逐步取代 ASP.NET WebForm。
(3)为什么 ASP.NET MVC 更好?
程序员有更强的掌控力,不会产生垃圾代码;程序员能够更清晰的控制运行过程,因此安全,性能,架构等更清晰。WebForm 和 ASP.NET MVC 在“入门”和“深入”两个要素之间正好相反。ASP.NET MVC 入门难,深入简单,而 WebForm 入门简单,深入难。
(4)什么是 MVC 模式? 模型(Model),视图(View),控制器(Controller)
Model 负责在 View 和 Controller 之间进行数据的传递:用户输入的内容封装为 Model 对象,发给 Controller;要显示的数据由 Controller 放到Model 中,然后扔给 View 去显示。Controller 不直接与 View 进行交互。
(5)ASP.NET MVC 与 “三层架构”没有任何的关系。三层架构中的 UI 层可以用 ASP.NET MVC 来实现。
(6)ASP.NET MVC 对约定的依赖性很强,这样的好处就是可以减少配置。