Asp.net mvc 如何使用ASP.NET MVC进行快速应用程序开发?

Asp.net mvc 如何使用ASP.NET MVC进行快速应用程序开发?,asp.net-mvc,rad,Asp.net Mvc,Rad,我有很短的时间(开始大约80小时)用一个成熟的SQL+Web系统替换现有的Access数据库,我正在列举我的选项。我想使用ASP.NET MVC,但我不确定如何在我的短时间内有效地使用它 对于数据库后端,我将使用LINQtoSQL,因为这是一个我已经知道的产品,可以很快使用它 有没有人有过以这种方式使用ASP.NET MVC的经验,并能分享一些见解 编辑:我之所以对ASP.NET MVC感兴趣,是因为我知道(100%确认)在第一轮之后还有更多的工作要做,我希望我的维护工作尽可能简单。根据我的经验

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

对于数据库后端,我将使用LINQtoSQL,因为这是一个我已经知道的产品,可以很快使用它

有没有人有过以这种方式使用ASP.NET MVC的经验,并能分享一些见解

编辑:我之所以对ASP.NET MVC感兴趣,是因为我知道(100%确认)在第一轮之后还有更多的工作要做,我希望我的维护工作尽可能简单。根据我的经验,Webforms应用程序在重复维护过程中往往会出现故障,尽管有纪律性

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


编辑2:进一步的背景:我正在替换的Access应用程序在一定程度上被大楼里的每个人使用,自从它从Access 98升级到2003以来,每天都会崩溃,导致几个小时的生产效率损失,因为自上次备份以来,人们不得不重新输入数据。这就是时间短的原因——这是一个关键的业务功能,他们无法承担每天重新输入数据的费用。

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

您将编写比RAD Webforms更多的基础架构代码,RAD Webforms是将数据网格和数据源拖到.aspx页面上的替代方案。我喜欢MVC,但如果你有压力,那就用Webforms吧。MVC可以更快,但前提是预先构建了基础设施

MVC2通过包含基于模型的HTML帮助程序(如
Model.EditorFor()
)来缓解一些问题,但它还不够好。没有快速网格代码。寻呼?你在用你自己的传呼机。AJAX编写自己的JQuery


当然,所有这些东西都有第三方和开源库,但根据我的经验,将它们混合在一起并确保它们玩得好也很费时。

一旦你开始使用MVC,这很快,但需要一段时间a)学习和b)构建一套有用的代码

如果您的UI不太复杂,那么可以很容易地设置一个快速数据输入界面


如果您的UI非常非常简单,您可能希望查看

您还可以查看要绑定到数据库的实体框架,这将创建要与MVC一起使用的模型。但正如jfar所说,在短暂的死亡压力下,去追求你最了解的

ASP.Net MVC很好,但是

如果您以前没有使用ASP.NETMVC开发过系统,那么在期限较短的项目中使用它是一种风险

如果您的应用程序是“简单”CRUD应用程序,那么我将使用动态数据: (帕迪刚刚比我抢先一步)


如果您的系统非常大,您可以考虑SharePoint访问服务

< P>简单Web应用程序+紧调度= ASP.NET WebFrase.< 复杂的web应用程序+紧凑的时间表=ASP.NET MVC

我发现,随着web应用程序的复杂性线性增加,webforms应用程序的复杂性呈指数增长。一旦您开始编写自己的服务器控件(而不是用户控件,因为它们仍然相对简单),这对于更复杂的UI来说是必要的,您就需要熟悉整个页面生命周期、viewstate的工作方式以及框架从您那里抽象出的webforms的其他模糊部分

MVC虽然要求您熟悉HTML,但在复杂性方面做得很好。无论应用程序有多复杂,您仍然要在控制器中处理POCO和方法。一旦你克服了最初的障碍,它就会一帆风顺。开发难度的增加速度与网站难度的增加速度相同

个人经验:我使用自定义服务器控件将一个相对复杂的网站转换为ASP.NETMVC,并将代码库减半。我还大大降低了代码的复杂性

我唯一要注意的是,使用ASP.NET ajax更容易实现ajax。因此,如果您打算开发一个严重依赖ajax的web应用程序,那么webforms可能会击败MVC


从ASP.NET迁移到MVC并不总是最容易的。您必须从基于代码隐藏的应用程序转移到控制器不知道您的UI的应用程序。此外,MVC严重依赖URL来确定用户的意图,而ASP.NET则依赖事件处理程序

就我个人而言,如果我觉得某个应用程序注定是MVC,我就不会浪费时间在ASP.NET中开发它。但是,我有幸通过了最初的学习曲线。这也没那么糟糕。我在学习ASP.NET阻止我学习的所有HTML和HTML表单时遇到了更多的困难。

根据我的经验,我可以证明这一点——这是我编程的方式,不管技术如何


简而言之:按照直觉告诉你的去做(编写代码),在发现错误/遗漏时进行修改,当它起作用时,你就完成了(除了文档)。

确实没有好的答案

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

ASP.NET MVC为任何开始的web项目提供了(直接)最常用的约定

ASP.NET允许您拖放以使事情正常工作,但它严重破坏了非平凡应用程序的维护

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

  • 问我的老板,他是否想让我在公司内重新创建一个完整的业务应用程序