NEW!
CSHTML5 has now become OpenSilver!

We are happy to announce that CSHTML5 has been significantly improved and rebranded to 'OpenSilver', which stands for 'Open-source reimplementation of Silverlight'. It is fully backward compatible and it can be downloaded from OpenSilver.net. Upgrading from CSHTML5 to OpenSilver is very easy.
Read the FAQ

FAQ
From CSHTML5 to OpenSilver

 

Where can I find OpenSilver?

Please visit OpenSilver.NET to find all the information about OpenSilver.

The GIT repository is located at: https://GitHub.com/OpenSilver/OpenSilver

 

Is OpenSilver maintained by a different company?

No. OpenSilver is maintained by the same company as CSHTML5. The company is Userware. It is the same team with the same developers.

Since the company is growing significantly, we are improving on many fronts. We rebranded the CSHTML5 product to OpenSilver, we made it fully open-source, we modernized it with WebAssembly, and we are now investing a lot to bring it to the next level.

 

Why did you rename CSHTML5 to OpenSilver?

The first reason is that many people didn't like the name 'CSHTML5'. It was a shortened name for 'C#/XAML for HTML5', but many people found it difficult to remember and to type. It was also confusing because 'CSHTML' is also the extension used by Razor, which has nothing to do with CSHTML5.

More importantly, as the technology got significantly improved thanks to WebAssembly, we became very close to supporting all the features of Microsoft Silverlight, so we wanted a name that reminds that technology. OpenSilver stands for 'Open-source reimplementation of Silverlight'.

 

What are the differences, benefits, and drawbacks of OpenSilver versus CSHTML5?

About the differences:

OpenSilver has been forked from CSHTML5, but 99% of its source code has remained the same.

We have worked very hard to improve the technology.

The main difference is that CSHTML5 compiles C#/XAML into JavaScript whereas OpenSilver compiles C#/XAML into WebAssembly. WebAssembly is now supported by all current browsers and provides many benefits (read below). Please note that in both CSHTML5 and OpenSilver, your C#/XAML code will run entirely on the client-side web browser. The general architecture and the principles are the same.

The benefits of OpenSilver include:

  • Support for the latest developer tools and languages:
    • Visual Studio 2019, 2022 and newer
    • C# 11 and newer (note: OpenSilver is also backward compatible)
    • .NET Standard 2.0 and 2.1
    • .NET 5, 6, 7 and newer
  • Support for RIA Services, PRISM, MEF, MS Unity, OData, MVVMLight, Newtonsoft, and many more libraries
  • Support for most of the '.NET Standard' libraries that are on NuGet.org
  • Support for most controls of the Telerik UI suite (note: a license from Telerik is required)
    (OpenSilver is able to compile the original Telerik UI for Silverlight source code)
  • Better debugging experience with the Simulator using Visual Studio
  • Much faster projects compilation
  • Client-side code is better obfuscated thanks to WebAssembly (ie. it is more challenging to disassemble WebAssembly than JavaScript)
  • 100% free and open-source (MIT License)

The drawbacks are:

  • Compatibility with Internet Explorer has been dropped
    (note: OpenSilver however supports all current browsers, both on Desktop and Mobile)
  • The size of the generated files is slightly bigger. This might have an impact on the initial application loading time (note: the first time only, because files are then cached by the browser, just like they did with Silverlight)

 

Is there anything that I could do with CSHTML5 that I can no longer do with OpenSilver?

No, all the features of CSHTML5 are also in OpenSilver. OpenSilver lets you do the same and much more.

 

How to migrate a project from CSHTML5 to OpenSilver?

In terms of C#, XAML, and .NET support, OpenSilver is fully backward compatible with CSHTML5, so migrating from CSHTML5 to OpenSilver shouldn't take more than a few hours.

Since the project files have been updated to support more recent versions of Visual Studio and .NET, it is strongly recommended that you recreate the project files using the new OpenSilver project templates.

To do so:

  1. Install the free OpenSilver Visual Studio extension (.VSIX) (available on OpenSilver.NET)
  2. Launch Visual Studio (note: OpenSilver requires a more recent version of VS compared to CSHTML5)
  3. Create a new OpenSilver project for each of your CSHTML5 projects. Please note that the name of the project templates has changed and that the default project template of OpenSilver is the Silverlight-compatible one. Here are more details on which project templates you should use:
    • Use the "Empty OpenSilver Application" project template to create a new project that uses the same namespaces as Microsoft Silverlight and WPF. This corresponds to the legacy "SL-Compatible" Migration Edition project templates of CSHTML5.
    • Use the "UWP-Compatible OpenSilver Application" project template to create a new project that uses the same namespaces as UWP and WinUI. This corresponds to the legacy "CSHTML5 Empty Application" project templates of CSHTML5.
  4. Recreate the project references between the projects
  5. Copy/paste all your C# and XAML files from the legacy CSHTML5 projects into the new OpenSilver projects. Alternatively, you can manually move the new .csproj files into the legacy CSHTML5 projects folders, or you can manually edit the legacy CSHTML5 .csproj files to make them have a similar structure as the new OpenSilver .csproj files.

Since all the C# and XAML features of CSHTML5 are now also supported in OpenSilver, you shouldn't have much more work to do. Just recompile the new OpenSilver projects and you should be able to run your application using OpenSilver.

 

Can you help me to upgrade from CSHTML5 to OpenSilver?

Yes, of course. Our team of experts can help you to replace CSHTML5 with OpenSilver. It will be very fast. Just contact us to get started. We are here to help.

 

Can you help me to migrate from Microsoft Silverlight to OpenSilver?

Yes. We have dedicated senior developers who have been migrating Silverlight appliations for many years with 100% success rate. We are able to deliver pixel-perfect identical results while changing less than 1% of your application code. Migrated applications run on all browsers. We take care of everything from start to finish so that your resources are free to work on other tasks.

Please contact us to get started. You are in good hands.

More information can be found on the Migration Service FAQ.

 

What if I have another question or remark?

If you have another question or remark, please contact us at the new OpenSilver email address.