Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows应用程序(单击一次)与Web应用程序_C#_.net_Asp.net - Fatal编程技术网

C# Windows应用程序(单击一次)与Web应用程序

C# Windows应用程序(单击一次)与Web应用程序,c#,.net,asp.net,C#,.net,Asp.net,我们正在将旧的Access VBA/SQL 2005应用程序迁移到新技术,并有两个选项我们是使用Microsoft一键部署构建Windows窗体应用程序还是使用ASP.Net网站 该应用程序是一个劳动力管理系统预订作业动态调度甘特图组件。它将被超过20个地点的400多个用户使用 你能给我一些关于这些选项的反馈吗。如果你想让应用程序在一个中心位置进行维护,并让用户通过网络进行访问,请使用web应用程序。如果您的团队更熟悉Windows窗体应用程序,那么此选项(维护状态、动态控件、页面事件、DOM等

我们正在将旧的Access VBA/SQL 2005应用程序迁移到新技术,并有两个选项我们是使用Microsoft一键部署构建Windows窗体应用程序还是使用ASP.Net网站

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


你能给我一些关于这些选项的反馈吗。

如果你想让应用程序在一个中心位置进行维护,并让用户通过网络进行访问,请使用web应用程序。如果您的团队更熟悉Windows窗体应用程序,那么此选项(维护状态、动态控件、页面事件、DOM等)将涉及到学习曲线,因此时间投入将更大

如果你想让客户端在桌面上安装一个丰富的界面,你可以从一个中心位置轻松地进行管理…使用Windows窗体(或WPF提供更好的用户体验)使用ClickOnce进行部署将确保客户端应用程序保持最新状态。这似乎是您的团队更熟悉的选项,可以在最短的时间内生产出最好的产品

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


不要陷入炒作中。Web应用程序并不总是最好的选择。

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

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

您是否将silverlight作为一个选项?这将为您带来web应用程序的好处,但允许您创建更丰富的UI

我已将ClickOnce应用部署到110多个地点,拥有500-600名用户,ClickOnce在部署、维护和更新方面做得很好。要记住以下几点:

  • ClickOnce应用程序仍然是在用户机器上运行的软件,而不是在浏览器中运行的软件,因此,尽管在大多数情况下它与Web应用程序一样易于支持,但偶尔会出现Web应用程序通常不需要支持的维护问题(注册表损坏、本地机器安全混乱、硬盘驱动器问题等)。您还必须维护ClickOnce程序集权限的证书,这是一个额外的管理/支持领域
  • 随着Silverlight和更好的AJAX工具的出现和逐渐成熟,Windows和Web之间的UI差距越来越小
  • 应用程序越大,下载更新可能需要一些时间,尤其是在网络访问速度可能不快的远程位置

  • 您需要权衡部署Windows解决方案相对于新的Web解决方案的好处;在我们的例子中,我们要替换的应用程序是一个Windows应用程序,为了提高效率和培训,我们希望复制大量屏幕和工作流,使其外观/行为与旧版本相同,因此我们选择ClickOnce。我没有任何遗憾,ClickOnce对我们很有效。

    但是使用Windows窗体,只需单击一下,数据就会集中,而且应用程序将始终处于最新状态,因为我知道单击一下就可以解决这个问题。评论???@MartGriff:以上答案没有考虑ClickOnce。ClickOnce几乎没有令人头痛的问题,可以轻松支持数千台台式机,而且几乎不需要WinForms开发人员的新技能。我们将从数据中心(100mb)托管数据,站点有8mb ADSL连接。更正Silverlight将改善这一点,但我的问题是,我的团队中还没有人使用Silverlight。它的拾取/使用有多容易?到目前为止,我在拾取它时没有遇到任何问题。但我只做过评估和学习项目。这就是信息,给了我一些思考的东西;-)感谢您提供的信息,90%的用户将在我们的网络内,但有些用户在网络外。我正在考虑使用webservices为应用程序获取/发送数据。评论??Web服务绝对是构建事物的好方法。只要确保如果有机密信息通过网络传输……您就可以检查WS-Security并保护数据。