在Silverlight/WPF或ASP.NET中开发业务应用程序的相对工作量/生产率?

在Silverlight/WPF或ASP.NET中开发业务应用程序的相对工作量/生产率?,asp.net,wpf,asp.net-mvc,silverlight,Asp.net,Wpf,Asp.net Mvc,Silverlight,我想要一些关于使用ASP.NET与Silverlight/WPF进行构建的相对努力的模糊指南。我知道,这要看情况而定,但任何意见都非常感谢 我正在重建winforms应用程序,并计划将其移动到: ASP.NET(可以是MVC或webforms),或 Silverlight(4)或带有ClickOnce部署的WPF 这是一个典型的商业风格的应用程序,有几十个表单、各种数据网格、标准windows控件等。一些图表图形,但没有多媒体。它的数据量不是很大,也就是说,有相当多的数据网格,但它们很少有超

我想要一些关于使用ASP.NET与Silverlight/WPF进行构建的相对努力的模糊指南。我知道,这要看情况而定,但任何意见都非常感谢

我正在重建winforms应用程序,并计划将其移动到:

  • ASP.NET(可以是MVC或webforms),或

  • Silverlight(4)或带有ClickOnce部署的WPF

这是一个典型的商业风格的应用程序,有几十个表单、各种数据网格、标准windows控件等。一些图表图形,但没有多媒体。它的数据量不是很大,也就是说,有相当多的数据网格,但它们很少有超过10列&100行,而且通常更少。该逻辑目前与winforms代码紧密耦合,因此无论哪种方式,都需要从UI中分离出来。我们还使用Crystal Reports进行报告

2-3名开发人员将在这方面工作,他们有一些WPF和ASP.NET经验,但不多

我很想使用Telerik控件或类似的控件,因为它们看起来让我们想做的事情变得更容易

该应用程序是为客户安装的,仅在其防火墙内部使用。ASP.NET的主要优势是部署,但我认为silverlight或带有clickonce的wpf对于部署来说不会更糟,而且构建速度可能更快

如果有任何其他一般信息,我可以提供,这将使它更容易估计相对努力,让我知道

谢谢

更新:


让我们假设我做出决定的唯一依据是开发的速度/生产率(即忽略部署、UI影响等)。我应该选择哪一个

根据我的经验,最大的延迟是由“黑洞”造成的——当你把你的估算放在一起时,你会认为这些事情很容易,但由于存在漏洞的抽象、框架错误等原因,这些事情变得很难/复杂/耗时


因此,我倾向于使用经过验证的技术和协议以及最小抽象的方法,对我来说,这就是ASP.NETMVC。但要确保开发人员理解HTTP、HTML、模型-视图-控制器模式和无状态体系结构的基本原理。

您使用什么以及项目的成本效益完全取决于需求和您团队的技能。如果您来自WinForms背景,学习ASP.NET(MVC或WebForms)通常是一条漫长而艰难的道路(可以说,如果您正在学习WebForms,您也可以选择Silverlight)。如果您对HTML/CSS/JavaScript(jQuery)/MVC模式有丰富的经验,那么ASP.NET MVC可能更适合您的项目。如果您有跨浏览器兼容性、SEO或其他weby方面的要求,您可能会选择ASP.NET MVC


在最近的一个项目中,我们对需求和可用的技术选项进行了评估,客户强迫我们放弃ASP.NET MVC,但我们确定,考虑到团队和需求,Silverlight会更容易(阅读:更便宜)技术来实施该应用程序,将使项目成本降低50%。(受过教育,凭直觉猜测)

你根本无法将Asp.net站点与Silverlight和WPF进行比较。它们处于不同的世界。@jfar,不管WPF如何,关于ASPNET/Silverlight的重叠以及何时应该使用其中一个,都存在很大的模糊性。您必须决定是在服务器端(ASP.NET)还是在客户端(WPF)上开发。如果它是一个典型的WinForms应用程序,我会很想把它移到Silverlight,如果它是WebForms,我会选择ASP.NET。我已经更新了,更清楚地说:对于这个问题,我不在乎它是服务器端还是客户端。我只是想知道他们的开发速度,相对而言,假设我的开发人员在这两方面都缺乏经验。最近我问了一个非常类似的问题。您可能对以下一些答案感兴趣: