在我指出那些“VS”之一之前。像下面这样的问题...
...请让我说我不是要比较。
我需要答案的一些担忧包括:
我认为事实是,StackOverflow是类似于Google的产品,而ASP.NET MVC可能对此非常有用。但是我一直在开发“贵公司的应用”类别中的软件。
alt text http://stuffthathappens.com/blog/wp-content/uploads/2008/03/simplicity.png
因此,如果无法完成某事或必须对其进行黑客入侵,则事后投入大量精力可能会付出巨大的代价。希望能听到那些大跌的人的声音。
谢谢。
最佳答案
大约3个月前,我被告知我需要开发一个企业级Web应用程序(实际上是一系列小型Web应用程序),但是我可以选择自己想要的任何技术。
由于我最熟悉VS/C#/。Net,因此面临的难题是选择ASP.NET WebForms还是ASP.NET MVC2。与您不同,我唯一的背景是Windows Forms(WinForms)和少许WPF。因此,我不得不研究(并试用)WebForms和MVC。
就像您一样,我意识到我的应用程序既不是Google也不是Apple,而是您的沼泽标准公司应用程序,它具有成千上万个按钮和框等。WebForms似乎是部署速度最快,但难以测试且难以实现的长期保持。 MVC的学习曲线似乎要陡峭得多,但是一旦建立,测试和维护将变得轻而易举。
我只花了一个星期摆弄WebForms,所以我不能对此发表评论。但是MVC绝对是我期望的一切。
是的,这是一个陡峭的学习曲线。对我来说是新概念:
对我最有帮助的书籍是:
我还必须重新学习HTML,CSS和Javascript。
总体而言,一开始似乎有大量的准备工作,但是维护和扩展现有应用程序却很轻松。每当要求我进行更改时,这都相当容易,而且我通常能够按时甚至有时提前交付。
在理想的世界中,编写MVC应用程序将需要2个人进行。一个人编写核心代码,另一个人编写UI和 View (HTML,CSS,Javascript)。尽管完全可以自己完成。 (这就是我现在正在做的...)
不过,我在企业中部署时遇到了一些麻烦。在内部,我的公司正在运行Windows Server 2003和IIS6。不幸的是,当使用虚拟路径时,我们无法使该应用正确部署在IIS6上。 (对CSS文件的所有引用都已损坏。)如果计划部署MVC,建议您使用IIS7或更高版本。 MVC应该可以在IIS6上运行,但是要求您的IT部门愿意弄清楚如何使其工作。
编辑:我刚刚意识到我从未直接回答过您的问题。开始:
哦,应该注意,您可以将MVC和WebForms混合在一起。这不是一个全有或全无的主张。虽然,如果我不介意的话,我会尝试尽可能多地使用MVC,并且仅在显然更有意义的地方使用WebForms。
好的,我希望这对您有帮助... :-)