我不是在这里开始讨论,这篇文章不是关于职业发展,而是从商业角度来看: 如果一家公司使用ASP.Net MVC作为构建其网站和应用程序的主要方法。 但是, ASP.Net MVC需要更多的时间来显示功能性应用程序而不是ASP.Net Web Forms ,例如,构建域模型需要一些时间,显然无法在UI上显示现阶段。
我的问题是,如果客户希望看到功能演示应用程序(仅仅是一个概念证明),那么他就知道他正在处理的公司是专业的并且能够做到这一点。在ASP.Net Web窗体中进行该演示只是为了展示客户端,然后使用ASP.Net MVC处理真正的应用程序会更好吗?如果没有,那么(快速)替代品是什么?我的意思是,如果我们告诉客户等待直到我们有一个工作演示(由ASP.Net MVC)我们可能会失去客户端以及整个项目机会。
答案 0 :(得分:4)
WebForms比MVC更快是一个神话:
btnSubmit_OnSubmit
中的代码几乎与HttpPost
控制器操作相同。除了使用MVC之外,当您了解UpdateModel的工作原理时,您不必向左写以写object.FirstName = txtFirstName.Text
。快速MVC来自于了解如何使用EditorFor
,DisplayFor
模板获得最大收益。您需要了解并理解how to customize your Object.ascx file。有了这种技术,您就不必再手工制作表格了。在2个项目之前,我们有一个100%自动生成表单的站点。更改课程,更改表格。完成!
另一个有用的MVC工具是DataAnnotations属性。验证变得简单。定制这些也很容易。只需创建自己的ModelMetaDataProvider
并开始扩展应用程序可以处理的验证。
MVC中唯一较慢的部分是显示网格。 MVC 3已经有了一个有用的网格工具,MVCContrib现在已经有一个网格工具了。我最后滚动自己,实际上非常简单,循环遍历属性,写<td />
。 &LT; 200行代码。这也不是WebForms的真正好处。使用WebForms网格组件意味着使用ObjectDataSources等放弃了很多质量。
总结快速MVC来自这些不同的技术:
如果你更高级,并且知道像EntityFramework这样的ORMS以及如何使用Automapper,你可能会更快。
答案 1 :(得分:0)
我在excel中构建原型。没有逻辑,没有代码。基本上只是截图,向用户显示我们正在传达相同的想法。为您需要显示的每个“视图”或屏幕创建工作表。客户通常只关心应用程序看起来“漂亮”与它是否正常工作。
这也是一个好处,因为您可以在原型制作过程中包含更多非技术用户,因为大多数人都习惯于擅长。如果眼见为实,我可以向您发送一个示例和完成的生产Web应用程序。我个人以身作则最好。
到你写的帖子......
我的意思是,如果我们告诉客户要等到我们有一个工作演示(通过ASP.Net MVC),我们可能会失去客户端和整个项目的机会。
他们需要调整和管理他们的期望。多年来很快就发生了很多不好的开发,这使得客户提出的问题就像“Bob在1小时内完成了。”我说,你可以快速地完成一个糟糕的项目,你必须经常输送胶带或经过深思熟虑和写得很好的项目,只需要在Bus Reqs改变时加强
答案 2 :(得分:0)
您可以在MVC中快速获得演示并运行。我可以把它放在一起比使用WebForms快得多,我对两者都很熟悉。
对MCV中的约定的依赖将有很大帮助,绑定基于对象的名称。
如果我正在创建一个快速演示,我只会创建一堆包含静态数据的ViewModel,不同的按钮点击等只会将其中一个ViewModel绑定到页面。
Turbo Fast!
答案 3 :(得分:0)
我认为答案是显而易见的:使用你认为使你的速度更快。如果你在WebForms中更快,那么使用MVC毫无意义。特别是因为这是一个扔掉演示。