Moving Windows Forms, WPF, VB6 or other legacy applications to the web can be hard and expensive. The migration roadblocks can be endless when evaluating current web technologies. If you’re the new guy tasked with rewriting the entire application in Angular or another web technology... good luck!

将Windows Forms,WPF,VB6或其他旧版应用程序移动到Web上可能既困难又昂贵。 在评估当前的Web技术时,迁移的障碍可能是无止境的。 如果您是负责用Angular或其他Web技术重写整个应用程序的新手,祝您好运!

Wisej was built with this in mind. By taking the convenience of the WinForms object model and integrating many advanced JavaScript components, Wisej brings a familiar desktop development experience to the web without losing any of its benefits. Applications that originally could only run on Windows become available on every HTML5-compliant device in existence.

Wisej就是在考虑到这一点而构建的。 通过利用WinForms对象模型的便利性并集成了许多高级JavaScript组件,Wisej将熟悉的桌面开发体验带到了Web上,而不会失去任何优势。 原来只能在Windows上运行的应用程序可以在现有的每个符合HTML5的设备上使用。

Developers considering migrating from Gupta Team Developer, VB6, and WinForms will have the option to keep their existing business logic, gain a greatly modernized UI, and the same workflow. Wisej and Ice Tea Group offer automated migration solutions for Gupta Team Developer, Visual Basic 6, and WinForms applications to a fully modernized web-based platform. Semi-automated migration paths are also available for Microsoft C++, Windows Presentation Foundation (WPF), Silverlight and Visual FoxPro.

考虑从Gupta Team Developer,VB6和WinForms进行迁移的开发人员可以选择保留其现有的业务逻辑,获得高度现代化的UI和相同的工作流程。 Wisej和Ice Tea Group为Gupta Team Developer,Visual Basic 6和WinForms应用程序提供了向完全现代化的基于Web的平台的自动化迁移解决方案。 半自动迁移路径也可用于Microsoft C ++,Windows Presentation Foundation(WPF),Silverlight和Visual FoxPro。

Developers considering full-stack development tools for their projects will have the opportunity to leverage the scalability, flexibility, and security that Wisej has to offer.


案例研究:业务线应用程序面临的挑战 (Case Study: Challenges with Line-of-Business Applications)

Today’s world of enterprise-scale business applications usually shows a feature-rich history of evolvement and enhancements, making the transition from Windows desktop to native web a difficult, risky, and sometimes unrealistic task. What are typical challenges and how does it work?

当今的企业级业务应用程序世界通常显示了功能丰富的演进和增强历史,这使得从Windows桌面到本地Web的转换变得困难,危险,有时甚至不切实际。 典型的挑战是什么,它如何运作?

Let’s take a brief look at an example from the public sector:


Harris Local Government (part of the Constellation Software Group) decided to modernize 150 separate Windows modules developed in Visual Basic 6 to an integrated web-based platform. Harris serves more than 5,500 small and mid-sized municipalities with a wide variety of solutions such as vehicle registration, real estate, personal property, and utility billing. The software suite includes financial modules such as accounting, fixed assets, and payroll.

哈里斯地方政府(星座软件集团的一部分)决定将Visual Basic 6中开发的150个单独的Windows模块现代化为一个基于Web的集成平台。 哈里斯(Harris)为5500多个中小型城市提供服务,并提供多种解决方案,例如车辆登记,房地产,个人财产和公用事业计费。 该软件套件包括财务模块,例如会计,固定资产和工资单。

Figure 1 provides a screenshot from an existing desktop user interface built with VB6:


Image 1
Figure 1: Harris Local Government application before modernization (Visual Basic 6)
图1:现代化之前的Harris地方政府应用程序(Visual Basic 6)

Developing a complex enterprise-scale application from scratch is usually not an option that works. Here are typical obstacles to take into consideration:

从头开始开发复杂的企业级应用程序通常不是可行的选择。 以下是需要考虑的典型障碍:

  • Time, effort, risk and cost of a manual rewrite are in many cases beyond consideration. An application with hundreds or thousands of forms and dialogs may take dozens of man/years to rewrite and test from scratch.

    在许多情况下,手动重写的时间,精力,风险和成本是无法考虑的。 具有数百或数千种表单和对话框的应用程序可能需要数十个人/年才能从头开始重写和测试。
  • There is a huge risk when doing a manual rewrite without the ability to take over business logic and code from the legacy application. Usually, algorithms and logic have been developed over decades and can deal with an infinite number of data input and output scenarios. The effort around quality assurance and testing for 100% backwards compatibility is enormous.

    手动重写时,如果无法从旧版应用程序接管业务逻辑和代码,则存在巨大风险。 通常,算法和逻辑已经发展了数十年,可以处理无数种数据输入和输出情况。 围绕质量保证和100%向后兼容性测试的工作量很大。
  • The user base has been trained and accustomed to the existing application. Workflows, screens, and manuals should get a nice brush up and a fresh design, but the general functionality cannot be changed entirely, especially for ISVs with end-customer installations.

    用户群已经过培训,并习惯于现有的应用程序。 工作流程,屏幕和手册应该得到很好的修饰和新颖的设计,但是常规功能不能完全更改,尤其是对于具有最终客户安装的ISV。
  • Another limiting factor is R&D. Most companies cannot afford to maintain an existing application and build a new replacement over many years. The development team would have to be doubled. Programmers are hard to find and the experience and knowledge of “silver coders” is extremely valuable for software vendors.

    另一个限制因素是研发。 大多数公司多年来都负担不起维护现有应用程序并构建新替代产品的负担。 开发团队将不得不加倍。 程序员很难找到,“银色编码器”的经验和知识对软件供应商来说非常有价值。

使用Wisej将企业规模的应用程序迁移到Web (Migrating Enterprise-scale Applications to the Web with Wisej)

Thanks to Wisej and the consulting team of fecher (one of Ice Tea Group’s preferred implementation partners), 150 separate modules from Harris Local Government got turned into a great looking modern web application suite based on Microsoft .NET with C# and Wisej. Figure 2 shows the same window as before, now part of a modern UI with a new Navigation Bar and Tabbed MDI interface that was built to consolidate separate applications into one unified solution.

感谢Wisej和fecher(冰茶集团的首选实施合作伙伴之一)的咨询团队的帮助,Harris Local Government的150个独立模块变成了一个基于Microsoft .NET和C#和Wisej的精美现代Web应用程序套件。 图2显示了与以前相同的窗口,现在是现代UI的一部分,具有新的导航栏和选项卡式MDI界面,该界面旨在将单独的应用程序整合为一个统一的解决方案。

The modernization was completed in four phases:


  1. Visual Basic 6 projects got converted into C# projects.

    Visual Basic 6项目已转换为C#项目。
  2. All projects got consolidated in a Visual Studio solution and rebased to use Wisej components.

    所有项目都已整合到Visual Studio解决方案中,并重新配置为使用Wisej组件。
  3. New navigation controls such as the sidebar on the left and the tab bar on the top have been built to support 150 different modules in the new integrated application suite.

  4. Based on the mockups of a UI/UX designer, the Wisej Theme Builder was used to provide a brand-new look and feel to the Harris Local Government application.

    基于UI / UX设计器的模型,Wisej主题生成器用于为Harris本地政府应用程序提供全新的外观。

Image 2
Figure 2: Great new look & feel after migration & modernization based on Microsoft C#/.NET with Wisej
图2:基于Microsoft C#/。NET和Wisej的迁移和现代化后的全新外观

适用于任何复杂性的Wisej Web技术堆栈 (Wisej Web Technology Stack for Business Applications of Any Complexity)

Wisej is a Single Page Application (SPA) framework based on .NET for C# and VB.NET. It emphasizes the best of both worlds, desktop and web development, by taking controls that have a familiar look and feel to the web - modernized and enhanced. Imagine rewriting 1,000 screens (with 100,000 controls), 500 reports, 800 stored procedures, from scratch with the current web technologies and the resulting maze of templates, HTML, JS, and overlapping CSS, not to mention the naïve way of interacting with the server that may work for a real-estate web site but is utterly inadequate for the type of Line of Business (LOB) applications we see daily. With Wisej, it’s possible to migrate your existing business logic without any risky changes to the code base.

Wisej是一个基于.NET的C#和VB.NET单页应用程序(SPA)框架。 它通过采用对Web具有熟悉外观的控件进行现代化和增强,强调桌面和Web开发两全其美。 想象一下,使用当前的Web技术从头开始重写1,000个屏幕(带有100,000个控件),500个报告,800个存储过程,以及由此产生的模板,HTML,JS和重叠CSS的迷宫,更不用说与服务器交互的天真方式了。可能适用于房地产网站,但完全不足以满足我们每天看到的业务线(LOB)应用程序的类型。 使用Wisej,可以迁移现有的业务逻辑,而无需对代码库进行任何冒险的更改。

The best part of using Wisej? You won’t have to touch HTML, JavaScript, or CSS (if you don’t want to). Wisej has wrapped a full .NET control set spanning from simple buttons, combo boxes, and text boxes to more complex controls like data grids, data repeaters, ribbons or navigation bars. It’s as easy as picking a control from the Visual Studio Toolbox and dropping it on the page.

使用Wisej最好的部分? 您无需触摸HTML,JavaScript或CSS(如果不想)。 Wisej包装了完整的.NET控件集,从简单的按钮,组合框和文本框到更复杂的控件(如数据网格,数据中继器,功能区或导航栏)。 就像从Visual Studio工具箱中选择一个控件并将其放在页面上一样简单。

Wisej与WinForms比较 (Wisej vs. WinForms Comparison)

The development environment of WinForms and Wisej have a similar look and feel. With Wisej, you can drag and drop controls from the toolbox, double click to add event handlers, and wire properties the same as you would in WinForms.

WinForms和Wisej的开发环境具有相似的外观。 使用Wisej,可以从工具箱中拖放控件,双击以添加事件处理程序,并以与WinForms中相同的方式连接属性。

Image 3
Figure 3: Windows Forms Designer in Visual Studio
图3:Visual Studio中的Windows Forms Designer

Image 4
Figure 4: Pixel-perfect WYSIWYG design of Web-based applications in Visual Studio with Wisej
图4:带有Wisej的Visual Studio中基于Web的应用程序的像素完美的所见即所得设计

样式化应用程序以实现现代外观 (Styling Applications for a Modern Look & Feel)

With Wisej there’s no more worrying about integrating stylesheets in your application. The styling is done using the Wisej Theme Builder and loaded into your project automatically as a single JSON file. The Theme Builder allows you to customize the look and feel of all Wisej controls. You can use one of the 10 predesigned themes (see https://wisej.com/themes/), create your own custom theme, or just modify any base theme using smaller theme mixin files. Ice Tea Group’s professional services team is happy to help and provide suggestions for redesigning existing applications.

有了Wisej,您不必担心在应用程序中集成样式表。 样式是使用Wisej Theme Builder完成的,并作为单个JSON文件自动加载到项目中。 主题生成器使您可以自定义所有Wisej控件的外观。 您可以使用10个预先设计的主题之一(请参阅https://wisej.com/themes/ ),创建自己的自定义主题,或仅使用较小的主题mixin文件修改任何基本主题。 冰茶集团的专业服务团队很乐意为重新设计现有应用程序提供帮助和建议。

Once you choose your theme, you can test it in real-time using the URL of any active Wisej application. If the Theme Builder doesn’t have the styling functionality you need, every control in Wisej has a CssStyle attribute that lets you configure optional CSS for that control.

选择主题后,您可以使用任何活动的Wisej应用程序的URL进行实时测试。 如果主题构建器没有所需的样式功能,则Wisej中的每个控件都具有CssStyle属性,可用于为该控件配置可选CSS。

Image 5
Figure 5: Modify any control’s look and feel using the Wisej Theme Builder
图5:使用Wisej Theme Builder修改任何控件的外观

Image 6
Figure 6: Change the application’s theme on the fly

集成JavaScript小部件 (Integrating JavaScript Widgets)

While no JavaScript programming is required, it can be useful for integrating third-party widgets. Wisej includes a large set of free and premium extensions including Google Maps, FullCalendar, and speech recognition. If a new control is needed, the Wisej Widget control is able to wrap any third-party JavaScript control and turn it into a server-wired designable component.

尽管不需要JavaScript编程,但对于集成第三方窗口小部件很有用。 Wisej包括大量免费和高级扩展程序,包括Google Maps,FullCalendar和语音识别。 如果需要新的控件,则Wisej Widget控件能够包装任何第三方JavaScript控件,并将其变成服务器连接的可设计组件。

Image 7
Figure 7: Telerik widget integration in the designer

For a full list of included extensions, visit: https://wisej.com/extensions.

有关所包含扩展的完整列表,请访问: https : //wisej.com/extensions。

适用于iOS和Android的Wisej Mobile (Wisej Mobile for iOS and Android)

Starting with version 2.2, Wisej will include a Progress Web Application integration (PWA) module, and a set of premium packages for native iOS and Android applications. Developers will be able to create Wisej applications that control any aspect of the device from the server, and don’t need to know any HTML, CSS, JavaScript, Java, or Swift to use the mobile packages. It can all be done from C# or VB.NET. The packages will also include responsive templates, making responsive design a breeze.

从2.2版开始,Wisej将包含一个Progress Web应用程序集成(PWA)模块,以及一组用于本机iOS和Android应用程序的高级软件包。 开发人员将能够从服务器创建Wisej应用程序来控制设备的任何方面,并且不需要了解任何HTML,CSS,JavaScript,Java或Swift即可使用移动程序包。 所有这些都可以从C#或VB.NET完成。 这些软件包还将包括响应式模板,使响应式设计变得轻而易举。

The Wisej Mobile Integration package gives web developers the power to design complex business applications for mobile without touching the native code, and leverage all the native functionality of the device, including but not limited to biometric authentication, haptic feedback, screen brightness, native alerts, native toolbars, tabbars and more!

Wisej Mobile Integration软件包使Web开发人员能够设计移动设备的复杂业务应用程序而无需接触本机代码,并利用设备的所有本机功能,包括但不限于生物特征认证,触觉反馈,屏幕亮度,本机警报,本机工具栏,标签栏等!

C#代码 (C# Code)

// Dims the device’s screen to half of its possible brightness
Device.Brightness = 50;

// Uses the device’s built in biometrics or passcode to authenticate user
var authenticated = Device.Authenticate("Reason for authenticating");

Handling device events on the server is easy. This is how you can add handlers for selecting tab bar items, toolbar items, subscribe to notifications, and just about any other event that occurs on the device.

在服务器上处理设备事件很容易。 这样,您便可以添加处理程序来选择选项卡栏项目,工具栏项目,订阅通知以及设备上发生的几乎所有其他事件。

C#代码 (C# Code)

// somewhere in your code
Device.TabBar.Selected += TabBar_Selected;
private void TabBar_Selected(object sender, DeviceTabBar.SelectedEventArgs e)
	AlertBox.Show($"{e.Button.Text} was clicked!");

Using Wisej’s responsive profiles and the pixel-perfect WYSIWYG designer, developers can manipulate form sizes, control appearances, text to display, and more to fit every client’s screen.


自托管桌面和嵌入式部署 (Self-Hosting for Desktop and Embedded Deployments)

Wisej offers self-hosting through an OWIN / Katana web server that runs as a process or service on the machine.

Wisej通过OWIN / Katana Web服务器提供自托管功能,该服务器作为计算机上的进程或服务运行。

For developers that want to retain their application for the desktop, Wisej can run as a desktop application in either Chromium, Firefox or light 500KB IE-based app. The window’s frame is fully customizable and doesn’t require an internet connection to operate. The application can leverage some native Windows functionality like the MessageBox or the file system. The full source code is provided to allow developers to work with authentication, logging, and directory browsing.

对于希望保留其桌面应用程序的开发人员,Wisej可以在Chromium,Firefox或基于IE的500KB轻型应用程序中作为桌面应用程序运行。 窗户的框架是完全可定制的,不需要互联网连接即可操作。 该应用程序可以利用某些本机Windows功能,例如MessageBox或文件系统。 提供了完整的源代码,以允许开发人员进行身份验证,日志记录和目录浏览。

Syncfusion,DevExpress和Infragistics的组件库集成 (Component Library Integrations for Syncfusion, DevExpress, and Infragistics)

Wisej has integrated several third-party component libraries. These JavaScript widgets now act as familiar server-side .NET controls, eliminating the need for developers to use JavaScript, HTML, CSS, or Ajax requests to work with them. Using these widgets in Wisej is as easy as using any WinForms control. For example, changing a widget’s background color:

Wisej已集成了多个第三方组件库。 这些JavaScript小部件现在充当熟悉的服务器端.NET控件,从而使开发人员无需使用JavaScript,HTML,CSS或Ajax请求即可与它们一起工作。 在Wisej中使用这些小部件就像使用任何WinForms控件一样容易。 例如,更改小部件的背景颜色:

C#代码 (C# Code)

// this is updated automatically on the client.
this.ejCircularGauge1.Options.backgroundColor = "white";

// handling any event from the widget on the server.
this.ejCircularGauge1.Widget.legendItemClick += this. ejCircularGauge1_LegendItemClick;

Syncfusion Essential JS (Syncfusion Essential JS)

Image 8
Figure 8: Syncfusion Essential integration with Wisej
图8:与Wisej的Syncfusion Essential集成

DevExpress DevExtreme (DevExpress DevExtreme)

Image 9
Figure 9: DevExpress integration with Wisej

基础设施IgniteUI (Infragistics IgniteUI)

Image 10
Figure 10: Infragistics IgniteUI integration with Wisej
图10:Infragistics IgniteUI与Wisej的集成

训练 (Training)

Current desktop developers will be able to adjust to the Wisej framework with relative ease, resulting in reduced training costs and increased productivity. They’ll find that they’re able to develop productive software to take to market very quickly. Additional training and support are available for developers that want to gain a deeper understanding of the Wisej framework.

当前的桌面开发人员将能够相对轻松地适应Wisej框架,从而降低培训成本并提高生产率。 他们会发现他们能够开发出能够Swift推向市场的高效软件。 希望对Wisej框架有更深入了解的开发人员可以享受其他培训和支持。

好成绩 (Great Results)

Companies all around the world have used Wisej to modernize their applications, from small to extremely large. Wisej is being used in many industries including agricultural, medical, construction, manufacturing, financial, and many more. From individual development teams to multi-billion-dollar corporations, Wisej excels in giving developers the tools they need to get the job done. Find out what others are saying about Wisej:

从小到大,世界各地的公司都在使用Wisej对其应用程序进行现代化。 Wisej被用于许多行业,包括农业,医疗,建筑,制造,金融等。 从个人开发团队到数十亿美元的公司,Wisej都擅长为开发人员提供完成工作所需的工具。 了解其他人对Wisej的评价:

For consultation inquiries contact us at https://wisej.com.

有关咨询查询, 请通过https://wisej.com与我们联系。

翻译自: https://www.codeproject.com/Articles/5268171/Migrate-Windows-Desktop-Apps-to-the-Web-with-wisej

参与评论 您还未登录,请先 登录 后发表或查看评论


  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
©️2022 CSDN 皮肤主题:编程工作室 设计师:CSDN官方博客 返回首页
钱包余额 0