我有很短的时间(开始大约 80 小时)用成熟的 SQL + Web 系统替换现有的 Access 数据库,我正在列举我的选项。我想使用 ASP.NET MVC,但我不确定如何在短时间内有效地使用它。

对于数据库后端,我将使用 Linq to SQL,因为它是我已经了解的产品,并且可以快速使用它。

有谁有以这种方式使用 ASP.NET MVC 的经验并可以分享一些见解吗?

编辑: 我对 ASP.NET MVC 感兴趣的原因是因为我知道(100% 确认)在第一轮之后将会有更多的工作要做,并且我希望我的维护工作尽可能简单。根据我的经验,尽管有纪律,但 Webform 应用程序往往会因重复维护而崩溃。

也许有一个中间立场?比如说,使用 Webforms 构建应用程序,然后当我有更多的时间预算用于该项目时将其迁移到 MVC,这对我来说有多困难?

编辑2: 进一步的背景:我要替换的 Access 应用程序在建筑物中的每个人都以某种方式使用,自从它从 Access 98 升级到 2003 以来,它每天都会崩溃,导致工作效率下降数小时,因为人们必须重新输入自上次备份以来的数据。这就是时间短的原因 - 这是一项关键的业务功能,他们无法每天重新输入数据。

有帮助吗?

解决方案

确实没有好的答案。

如果您可以在任何“短”时间内(除非您将“短”测量为 6 个月)以新格式(Web)重新创建一个重要的业务应用程序,我会感到非常惊讶。

ASP.NET MVC 提供(毫无疑问)任何初始 Web 项目可用的最常用约定。

ASP.NET 允许您通过拖放操作来使工作正常运行,但它严重破坏了重要应用程序的维护工作。

如果是我,我会做三件事:

  1. 询问我的老板是否希望我在完全不同的平台上重新创建整个业务应用程序。

  2. 告诉他他可以现在更快地获得它 (ASP.NET),也可以稍后更快地获得它 (ASP.NET MVC)。

  3. 让他打电话。


个人附录:我已经将 ASP.NET 和 ASP.NET MVC 用于 Web 应用程序。MVC 更好。不是更快,而是更好。它让网络开发对我来说再次变得“有趣”。

其他提示

MVC是不是一个真正的RAD开发框架。

您会写比拖动DataGrid和数据源到.aspx页面中的RAD Web表单的替代更为基础结构代码。 我爱MVC 但如果你的枪下与Web表单去。 MVC可以更快,但前提是你有基础设施的预建。

MVC 2减轻一些这方面的,包括基于模型的HTML佣工像Model.EditorFor()但它不够好还。没有快速电网代码。分页?你滚你自己的传呼机。阿贾克斯?写自己的JQuery的。

当然,也有所有这些东西,但我的经验smushing它们放在一起,并确保他们发挥好现有的第三方和开源库也费时。

简单的Web应用+紧= ASP.NET web表单。

复合web应用+紧= ASP.NET MVC。

我发现,作为线性网络应用程序的增加呈指数一个web表单的应用程序的复杂性增加的复杂性。一旦你开始写你自己的服务器控件(不是用户控件,因为这些都还比较简单),这可能是必需的更复杂的UI,你需要有整个页面生命周期,如何在视图状态的作品,和其他的成竹在胸该框架从你抽象web表单的晦涩部分。

MVC,而它需要你知道HTML好,对复杂的尾部确实很大。无论应用程序是多么复杂,你还在处理波苏斯并在控制器的方法。一旦你熬过最初的障碍,其一帆风顺。开发难度增加以同样的速度作为网站的难度。

个人体验:我转换使用自定义服务器控件ASP.NET MVC相对复杂的网站和削减代码库中的一半。我还大大减少了代码的复杂性为好。

我唯一要注意的是,AJAX是更简单。使用ASP.NET AJAX做。所以,如果你要开发一个Web应用程序,在很大程度上依赖于阿贾克斯则可以web表单刚刚击败MVC。


迁移从ASP.NET到MVC是并不总是最容易。你必须从基于代码隐藏的应用程序移动到一个地方你的控制器不知道你的用户界面。另外,MVC在很大程度上依赖于该URL来确定用户的意图,而ASP.NET依赖于事件处理程序。

个人而言,如果我觉得一个应用程序注定是MVC,我不会浪费时间在ASP.NET开发它。但后来,我已经越来越近了最初的学习曲线的好处。这是不是所有的坏恕我直言。我有更多的麻烦学习所有的ASP.NET让我从学习HTML和HTML表单。

随着这一最后期限,我认为它更方便的使用ASP.Net网络表单。有更多的时间/预算第一阶段之后,你可以开始使用MVC,因为它们可以共存来开发应用程序的新零件。

另外要注意的Ajax和网格代码。在MVC他们通常需要更长的时间来开发,而且至少对我来说,他们显得更健壮,因为你必须要知道自己在做什么。

这个问题是从2009年,将是不错的,如果作者将其决定的一些反馈。

编辑:看看到 http://mvcscaffolding.codeplex.com/ 如果你还需要一个RAD使用asp.net MVC。

一旦您开始使用 MVC,速度会很快,但是需要一段时间 a) 学习和 b) 构建一套有用的代码。

如果您的用户界面不复杂,那么设置快速数据输入界面会非常容易。

如果你的用户界面是 真的真的 简单,你可能想看看 ASP.net 动态数据。

您也可以看看实体框架绑定到你的数据库,这将创建的模型与MVC使用。但像jfar说,短deathline压力下,去为你最知道!

ASP.Net MVC是好的,但....

如果你以前没有使用ASP.Net MVC开发了一套系统,然后使用它的短期限的一个项目是有风险的。

如果您的应用程序是一个“简单”的CRUD应用程序,然后我会去与动态数据:的http:// www.asp.net/dynamicdata/ (水稻刚刚打我一个)

如果你的系统是非常大的,你可以考虑的SharePoint访问服务的 http://blogs.msdn.com/access/archive/2009/10/21/net-developer-blogs-about-access-2010.aspx

进化软件开发

从以往的经验我担保 - 这就是我如何计划,它的工作原理技术,无论

在短:做你的直觉,感觉告诉你(代码的东西),修改你发现误/漏报,而当它工作,你就大功告成了(但对于文档)

另一种选择是使用阿尔法五V10 - 它最近收到了大拇指从InfoWorld的了 检查出 http://blog.alphasoftware.com/search/label/Press%20coverage

这两个框架在交付解决方案足够的贡献,但WebForms的自动化一些任务所涉及的UI功能,如数据分页,排序,状态持续性或自定义的数据持久性和更多的,但是......如果你真的坐下来说,好吧我需要做什么? ...设计,导航,模型化,目前,然后弄清楚如何展示布局,如何连接到数据,如何将数据,如何将它们与UI,如何进行分页,排序,最后编辑结合,真正把你的心下来,在完成所有每个框架比较techinques,你就会知道,MVC是更自然和团队精神。你需要一个像EF代码首先,像引导和jQuery一个CSS框架工具,应用技术,如国际奥委会,系统级芯片,分层等,并使用例如Automapper做无聊的塞入,但不管你有多少事要考虑,它会总是可以匹配更多轻松,自然的和直接不必知道许多控制和管理是需要的WebForms所有的各种配置。除非如果你的项目是与地方......你知道CMS能力的ERP :-) 总之,现代skils需要在当今的趋势,以适应和MVC只是当好东道主,以帮助您使用它们而不suprises。 我已经写吨WebForms的代码,但我不会再接触它。 所以,最后的一点是,在2014年与所有这些工具和框架在那里,MVC是不是慢,而是相反的,但需要一个初始,小到我,efford收集一些资源并锁定了几个方法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top