News

Silverlight Reborn? Check Out 'C#/XAML for HTML5'

Silverlight, the deprecated Web app development framework from Microsoft that leverages XAML and can be programmed in C#, enjoys a legion of devoted developers -- nearly as much as Visual Basic's vociferious supporters.

Thus, Microsoft's slow sunsetting of the technology -- it announced Silverlight 5's end of life in 2012 and will stop supporting it completely in 2021 -- resulted in much consternation from coders in the Microsoft ecosystem.

Now, to their rescue comes C#/XAML for HTML5 from Userware, which today announced its Silverlight-replacement project, also called CSHTML5, has reached release candidate status after a lengthy beta program.

The tool comes as a Visual Studio extension in the Visual Studio Marketplace, promising to create HTML5 apps using only C# and XAML -- or migrate existing Silverlight apps to the Web.

"Developers are now able to use C# and XAML to write apps that run in the browser," the French company said. "Absolutely no knowledge of HTML5 or JavaScript is required to use the extension, as it compiles your files to HTML5 and JavaScript for you. That means you can now build Web apps with static typing and all the strengths of C# and XAML, and make sure your code is ready when WebAssembly comes out."

WebAssembly is upcoming experimental technology presented as an open standard that lets developers write low-level assembly-like code for the browser in non-JavaScript languages like C, C++ and even .NET languages like C# for improved performance over JavaScript.

Until WebAssembly fully supported in the Web ecosystem, CSHTML5 might be seen as an alternative for .NET-centric developers.

"We support the transition between the end of Silverlight, and the arrival of WebAssembly, so that C# and XAML devs will not have to use HTML5 or JavaScript while waiting for WebAssembly, Userware's Killian Leclercq told Visual Studio Magazine.

"The feedback we had mainly is about how close to Silverlight the development experience is with CSHTML5. Our target audiences are both .NET developers looking to create (or port) Web apps using the languages they mastered over time, and companies that heavily invested in these technologies and would rather reuse everything they already built rather than start over again."

C#/XAML for HTML5
[Click on image for larger view.] C#/XAML for HTML5 (source: Userware).

CSHTML5 is browser-based only, and Userware has no plans to take it to the mobile arena, à la what Facebook did in repurposing its React framework into React Native for building native iOS and Android apps. Leclercq told VSM that Xamarin already has that space covered in the .NET ecosystem.

What the company does plan on doing is releasing CSHTML5 in version 1.0 as it waits for WebAssembly to take hold and provide .NET coders with some kind of C# compiler -- expected toward the end of this year -- followed by a XAML compiler.

"We expect XAML might take longer, though, and that’s where C#/XAML for HTML5 shines," Leclercq said. "Developers will be able to take advantage of the powerful gain in performances provided by WebAssembly on C# files, and XAML files will be compiled by CSHTML5 until a XAML compiler for WebAssembly is released."

For now, Userware claims CSHTML5 can let developers keep up to 97 percent of their existing code when they port their existing Silverlight, Universal Windows Platform (UWP) and Windows Presentation Foundation (WPF) applications to the Web, effectively reducing to only 3 percent the amount of compatibility modifications required for a successful app migration.

"I think CSHTML5 could help enterprise developers find a way of developing Web apps differently, more efficiently, and in a more productive way in the .NET ecosystem," Leclercq said. "While the extension does not pretend to be the right answer for every developer, providing them with an alternative path of development opens up much more possibilities than they have at this time."

CSHTML5 now supports 99 percent of C# features, the company said, along with 75 percent of XAML and 55 percent of .NET Core. It comes in several editions, including a free one that lacks some functionality of the others. It works with Visual Studio 2012, 2013, 2015 and 2017 (this article earlier mistakenly said it was only available through the 2013 version, as its Web site had not yet been updated).

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Copilot Billing Shock Hits Developers

    Developer complaints about GitHub Copilot's new usage-based billing model have centered on unexpectedly rapid AI credit consumption, and neither GitHub nor Microsoft has responded directly to the backlash, though they have previously published guidance to lessen model usage costs.

  • Hands On with GitHub Copilot App Technical Preview: Turning a Blazor Issue into a PR

    GitHub's brand-new Copilot desktop app, in technical preview, handled a small Blazor issue from planning through pull request creation, but the hands-on test also showed why developers still need to verify agent work in the running app before merging.

  • At Build 2026, Microsoft Sets Up Windows as an OS for AI Agents

    Microsoft's Build 2026 Windows developer announcements point to a broader platform strategy for agentic AI, spanning terminal workflows, local models, app-building skills, Cloud PCs and operating system-level containment.

  • Slammed by Copilot Usage-Based Billing on Day 1, Facing $180 Bill for June

    A journalist using GitHub Copilot Pro details how a broken editorial workflow on day one of usage-based billing led to runaway token consumption, a projected $180 monthly bill, and practical tactics for cutting AI credit burn.

Subscribe on YouTube