Windows客户端与Web客户端

时间:2010-11-25 16:56:57

标签: java asp.net sql-server webclient

我在组织中正在讨论我作为顾问的问题。 讨论围绕替换使用VB6(MDI)胖客户端构建的应用程序。

此应用程序有大约100个屏幕+ 40个报告。大约400个用户使用报告和数据,使用内联查询,而db结构非常规范化。其余的代码非常糟糕。

在讨论补货策略时,我们提出了一些想法。

  1. 使用Crystal报表生成在Web领域上运行的J2EE Web应用程序。
  2. ASP.NET Web表单使用Crystal报表生成报表。
  3. Windows客户端应用程序(WPF / Win-forms),包含报告的报告服务。
  4. 虽然我不想开始一场火焰战(Dot net vs. Java或WEb vs. Desktop),但了解社区对此事的想法会很高兴。 只是为了提前我觉得选项3可能是最好的版本,但我想知道其他人的意见。

6 个答案:

答案 0 :(得分:1)

您必须要问/发现的一个关键问题是您是否真的需要复制现有功能。您可能会发现,随着业务工作流程的变化和技术的改进,您不需要构建数百个页面和40个报告解决方案。

如果您或多或少地需要更换它,那么3种技术中的任何一种都可以解决问题。他们的关键是原型。在你找到它们之前先尝试每一个。

答案 1 :(得分:1)

加上karianna的回应......小心点。你很可能会陷入Second System Effect。更好的方法是保留现有系统,只使用其中一种新技术制作新功能,然后慢慢开始迁移。不要计划将迁移迁移到“新版本”

答案 2 :(得分:1)

VB6应用程序与第三方控件等有多重?你能在基于浏览器的UI中复制那些吗?

答案 3 :(得分:1)

我还想补充一下这里的优秀评论,你的部分考虑因素可能涉及系统“可调性”。如果您的应用程序需要频繁更新,那么Web方法可能会更好。如果应用程序稳定,桌面客户端的构建可能要便宜得多。

答案 4 :(得分:1)

将“旧”应用程序转换为其他平台并不容易。 学习新技术并以最佳方式实施它需要时间。

由于您熟悉VB6,我建议您使用VB.NET作为编程语言来考虑ASP.NET MVC。

我过去开发了一些WebForm网络应用程序,但我从未感到满意: - 要管理的事件太多 - 与回发和观点状态的麻烦

ASP.NET MVC,更直观。我喜欢它。 您可以添加jQuery(或其他javascript框架)以获得更流畅的界面。 作为一种报告工具,我曾经使用并讨厌过Crystal Reports。 我更喜欢RDL / RDLC格式(报告服务)。您有一个集成在Visual Studio中的设计器,甚至可以从头开始构建XML。

答案 5 :(得分:1)

从部署和支持的角度来看,1或2:无需安装客户端。

如果您需要在网页中难以捕获的复杂演示文稿或流程,我建议仅使用Winforms 。也就是说,有Flash和Silverlight等...