Windows应用程序(一键)与Web应用程序

时间:2009-06-26 14:49:21

标签: c# .net asp.net

我们正在将旧的Access VBA / SQL 2005应用程序迁移到新技术中,我们有两个选项可以使用Microsoft One Click Deploy或ASP.Net网站构建Windows窗体应用程序吗?

该应用程序是一个劳动力管理系统预约工作动态调度甘特图组件。它将被超过20个地点的400多名用户使用。

您能否就这些选项给我一些反馈。

5 个答案:

答案 0 :(得分:6)

如果您希望将应用程序维护在一个中心位置并由用户通过Web访问...请使用Web应用程序。如果您的团队更熟悉Windows窗体应用程序,那么该选项将涉及学习曲线(维护状态,动态控件,页面事件,DOM等),因此投入的时间会更长。

如果您希望客户端在桌面上安装了丰富的界面,您可以从中央位置轻松管理...请使用Windows窗体(或WPF以提供更好的用户体验)。 使用ClickOnce进行部署将确保客户端应用程序保持最新。听起来这对您的团队来说是更熟悉的选项,并在最短的时间内生成最好的产品。

如果您的用户都在公司网络中,则任一选项都可以使用中央SQL Server数据库(或共享的Access / SQL Server Compact Edition / SQLLite数据库)。

不要陷入炒作。网络应用并不总是最好的选择。

答案 1 :(得分:2)

我会创建一个Web应用程序。这将提供管理中心位置的好处。拥有400多个用户和20个位置的Windows应用程序将花费更多时间和头痛进行更新和维护。

答案 2 :(得分:2)

如果您的所有用户都拥有到托管网站的良好带宽(至少10mb),那么到Click-once应用程序的端口路径可能是最简单的,并且应该为您的用户提供最短的学习曲线。

答案 3 :(得分:2)

您是否将Silverlight视为一种选择?这将为您提供Web应用程序的好处,但允许您创建更丰富的UI。

答案 4 :(得分:2)

我已经为超过110个位置部署了一个ClickOnce应用程序,拥有500-600个用户,ClickOnce可以很好地处理部署,维护和更新。要记住以下几点:

  1. ClickOnce应用程序仍然是在用户的计算机上而不是在浏览器中运行的软件,因此即使在大多数情况下它也像Web应用程序一样容易支持,但偶尔会出现维护问题,通常不需要支持Web应用程序(损坏的注册表,本地机器安全问题,硬盘驱动器问题等)。您还必须维护ClickOnce程序集权限的证书,这是管理/支持的另一个区域。
  2. 随着Silverlight的出现和逐渐成熟以及更好的AJAX工具,Windows和Web之间的UI差距越来越小
  3. 您的应用程序越大,下载更新可能需要一些时间,尤其是在可能没有最快网络访问速度的远程位置。
  4. 您需要权衡在新的Web上部署Windows解决方案的好处;在我们的例子中,我们替换的应用程序是一个Windows应用程序,我们希望重现许多屏幕和工作流程,以便在生产力和培训目的上看起来/行为与旧版本相同,因此我们选择了ClickOnce。我没有任何遗憾,ClickOnce对我们很有用。