2011-01-07 66 views
0

我不是在这里开始争论性的讨论,这篇文章不是关于职业发展,但从商业的角度来看: 如果一家公司使用ASP.Net MVC作为主要方法建立他们的网站和应用程序。 但是,012.ASP.Net MVC比ASP.Net Web Forms需要更多时间来显示功能应用程序,例如,构建领域模型需要一些时间,显然无法在当前阶段的UI上表示。快速的方法来显示客户的工作演示

我的问题是,如果客户希望看到功能演示应用程序(只是一个概念证明),所以他知道他正在处理的公司是专业的,并且能够做到这一点。在ASP.Net Web窗体中做演示只是为了展示客户端,然后在使用ASP.Net MVC的实际应用程序上工作会更好吗?如果不是,那么(快速)备选方案是什么?我的意思是,如果我们告诉客户等待,直到我们有一个工作演示(通过ASP.Net MVC)我们可能会失去客户和整个项目机会

回答

4

的WebForms比MVC快是一个神话:

  1. 你是不是需要有一个域模型,只是一些代表数据库中的表。这在WebForms中是一样的,除非你使用SqlDataSource。
  2. 您的!IsPostBack或btnSubmit_OnSubmit中的代码与HttpPost控制器操作几乎相同。除了使用MVC,当您了解UpdateModel的工作方式时,您无需编写左边的object.FirstName = txtFirstName.Text
  3. UI是UI。如果您知道创建UI的HTML/CSS就像一样简单。在MVC中几乎更容易,因为您不必再​​设置控件属性,并且可以在一个位置完成所有UI。

快速MVC来自理解如何使用EditorFor,DisplayFor模板获得最大的回报。你需要知道并理解how to customize your Object.ascx file。利用这种技术,您不必手工创建表单。 2个项目之前,我们有一个拥有100%自动生成表单的网站。改变一个班级,改变一个表格。完成!

另一个有用的MVC工具是DataAnnotations属性。验证变得容易。定制这些也非常简单。只需创建您自己的ModelMetaDataProvider并开始扩展您的应用程序可以处理的验证。

较慢的MVC的唯一部分是显示网格。 MVC 3已经有了一个有用的网格工具,而且MVCContrib已经有了一年的网格工具。我结束了自己的翻身,其实非常简单,通过属性循环,编写<td />'s。 < 200行代码。这对WebForms也不是什么好处。使用WebForms网格组件意味着使用ObjectDataSource等来放弃很多质量。

总结快速MVC来自这些不同的技术:

  • 对象。ASCX
  • ModelMetadataProviders
  • 的UpdateModel
  • DataAnnotations

如果你是更先进,更知道像的EntityFramework和运筹学和管理学如何给你的Automapper可能会是更快的使用。

+0

+1 - 不错的收集jfar .. – 2011-01-07 14:01:45

0

我在excel中构建原型。没有逻辑,没有代码。只是基本上截图显示用户,我们正在沟通相同的想法。为每个需要显示的“视图”或屏幕创建一个工作表。客户通常只关心应用程序看起来“漂亮”,而且它的工作正确。

这也是一个好处,因为您可以在原型制作过程中包含更多的非技术用户,因为大多数用户都习惯于擅长。如果有人相信,我可以给你一个例子和完成的生产Web应用程序。我个人通过实例学习最好。

和你的帖子里你写...

我的意思是,如果我们告诉客户要等到我们有一个工作演示(由ASP.Net MVC),我们可能会失去客户和整个项目的机会。

他们需要调整和管理他们的期望。很多糟糕的发展已经很快完成了,这使得客户提出的问题如“Bob在1小时内完成了”。对此我可以说,你可以快速做出糟糕的项目,磁带还是一个经过深思熟虑并且写得很好的项目,只需要增强总线请求就可以改变

0

你可以在MVC中很快得到演示并运行,我可以比使用WebForms快得多,我既熟悉。

在MCV约定的依赖将有很大的帮助,结合基于对象的名称。

如果我创建一个快速演示,我只是创建一堆ViewModel与他们的静态数据,不同的按钮点击等将只是将这些ViewModels之一绑定到页面。

Turbo Fast!

0

我觉得答案是显而易见的:用你认为使更快。如果您在WebForms中速度更快,则使用MVC毫无意义。特别是因为这是一个抛弃演示。