2010-08-17 42 views
0

当您创建新的MVC应用程序时,它与Web应用程序有何不同?什么是MVC应用程序? (Visual Studio 2008/2010)

即使在Web应用程序中,我也可以在global.asax中放置路由处理程序。但是一个MVC应用程序不止于此,它甚至有上下文菜单来创建控制器和视图。

我想知道是否有可能将现有的Web应用程序变成MVC应用程序......?

回答

1

基本上MVC应用程序IS ASP.NET应用程序。不同的是,它具有参考

  • System.Web.Routing

  • System.Web.Abstractions

  • System.Web.Mvc

DLL-S 。此外它还有一些web.config中的额外配置和Global.asax中的路由注册。 MVC应用程序还附带控制器,视图和数据的默认文件夹。尽管使用相同的文件夹并不是强制性的。您可以轻松将现有的ASP.NET应用程序转换为MVC应用程序。如需更详细的信息,您可以检查本文http://www.packtpub.com/article/mixing-asp.net-webforms-and-asp.net-mvc

0

看看这个好职位:

How does the MVC pattern differ, if at all, from the DAL/BLL design pattern?

MVC是一种设计模式,这是尤其是在UI处理不同。所以如果你有一个应用程序有3层UI,BLL和DAL,你仍然可以使用BLL和DAL。但UI非常不同。 MVC设计模式有一个模型,一个视图和一个控制器。所以这个模型只是让我们说一个人类的对象。该视图是用户显示的用户界面。最重要的进展是几个视图可以使用相同的控制器。控制器检查字段的正确性,并执行你的代码。

因此,您可以重复使用BLL和DAL,并且必须更改现有网站的用户界面。

这就是我得到MVC设计模式的方式。

1

我假设你正在谈论具体关于ASP.NET MVC。所以我的答案主要是针对它。

ASP.NET MVC是久经考验的MVC设计模式的实现。 MVC已经被用于计算机软件的建设,已经有二十多年的历史了,但在过去的几年中已经显得很突出。特别是这种软件构建方法已被Ruby on Rails普及。 ASP.NET MVC沿着相同的路线,但增加了自己的怪癖和优势。

应用MVC设计模式时,重点是清晰分离关注点。您的查看关注在视图中实现 - 通过HTML,CSS,JavaScript,视图助手和ViewModels。您的数据担忧 - 将在您的模型图层中实现将由视图使用和渲染的数据。您的控制器有助于您的视图图层和模型图层之间的交互,例如检索数据,更新数据,操作数据等。

这种设计模式可能并不适用于所有类型的软件构造。但是,对于几乎所有类型的需要与用户交互的软件,MVC都大大简化了软件的构建和维护。

使用上述模式ASP.NET MVC极大地简化了Web应用程序开发。这通过使用约定更好,例如在控制器名称中添加'Controller',针对不同问题的文件夹的用途,URL路由约定等。

ASP.NET MVC的一个好处是它使使用纯HTML,CSS和JavaScript更容易。它也消除了Viewstate和与之相关的任何性能限制。

相关问题