OpenSilver 2.0, a new version of the replacement for the discontinued Silverlight web application framework, brings support for Visual Basic.NET and Rich Internet Application (RIA) Services. It also updates the tooling, featuring a live XAML preview designer in Visual Studio.
In 2020, a French company, Userware, updated its CSHTML5 tooling into what became OpenSilver (an open-source, MIT-licensed reimplementation of Silverlight). OpenSilver compiles .NET and XAML code into HTML5 and WebAssembly, reimplementing standard and selected third-party controls. It allows developers to reuse instead of rewriting their legacy Silverlight or XAML applications. The first version of OpenSilver was released in October 2021, and the "pixel-perfect" compatibility was achieved in October 2022 with version 1.1.
According to the Userware representatives that InfoQ contacted, the developer response to OpenSilver was "substantial" with "a marked increase in requests for end-to-end migrations".
Some individuals argued that OpenSilver might be an unnecessary endeavour, suggesting we should let Silverlight fade into obsolescence. However, other feedback was overwhelmingly positive, with developers expressing relief at having found a means to preserve the extensive work and effort invested in their applications.
Version 2.0, released on October 16th 2023, brings many new features to this open-source framework, including impactful support for Visual Basic.NET, a popular .NET language for rapid application development that has been neglected over the .NET history in favour of C#.
The tooling for OpenSilver 2.0 now allows real-time XAML previews in the Visual Studio XAML designer, replicating what the original Silverlight had. It brings a WYSIWYG drag-and-drop experience back into .NET application development, as the company announced, "bring(ing) back the golden days of rapid application development".
XAML Designer in Visual Studio (source: Userware)
According to the development team, the most challenging part of the 2.0 release was the new layout system, reengineered from scratch to replace the CSS-based system in OpenSilver 1.1. Developers can design custom layouts inheriting from the Panel class and overriding the Measure and Arrange methods. It supports third-party controls like Telerik UI for Silverlight.
"(...) one of the most daunting aspects of the 2.0 release was undoubtedly the task of setting priorities for the new features and enhancements to be included. Since the launch of version 1.1 (…), our team has been dedicated to understanding the needs of both the development community and businesses that migrated their enterprise applications to OpenSilver."
According to the website for OpenSilver, the companies relying on their framework include corporations like Bayer, TATA and KPMG.
The original Silverlight supported a server-side technology called "WCF RIA Services" (Rich Internet Application Services). Essentially, it was an automatic generation of Silverlight client entities and validation based on the CRUD-like Entity Framework representation of your domain model. OpenSilver 2.0 brings RIA Services back, renamed as "Business Application" project template.
The full release notes for the 2.0 release include over a hundred smaller features, bug fixes or performance improvements.
The future releases will be focused on supporting WPF, a superset of Silverlight XAML for migrating the existing WPF applications into OpenSilver. The company has also stated that they are venturing into 3D AR/VR applications and they intend to support Visual Studio LightSwitch, a rapid application development tool that was deprecated by Microsoft in favour of Power Apps.