We are excited to inform you that the fourth public Preview release of CSHTML5 2.0 - now powered by Bridge.NET - is available for download!
IMPORTANT: Before updating any of your existing v1.x projects to v2.x, be sure to make a backup copy first.
Where can I download it from?
You can download the VSIX installer for v2.0 Preview 0.4 (Alpha27-042) (for VS 2015 or newer) here.
Note: you can safely install the versions 2.x side-by-side with the versions 1.x. In other words, you do not need to uninstall the versions 1.x in order to install the versions 2.x.
To enable Simulator debugging: please check the options "Suppress JIT optimization on module load (Managed only)" and "Use Managed Compatibility Mode" in the Visual Studio options (menu "Tools" => "Options" => "Debugging" => "General").
How to try it out?
- Install the VSIX above (for VS 2015 or newer) (the download link is above)
- It will add a new category to the "New Project" dialog named "CSHTML5 v2"
- Create a new project using one of those new project templates (see screenshot below)
- Build the project
- Go to the "bin/Debug/Output/" folder and launch "index.html"
To update an existing project from CSHTML5 version 1.x to version 2.x:
- Please be aware that this action cannot be reverted easily. Therefore, we strongly recommend you to make a BACKUP copy of your project before updating it to v2.x.
- Go to the NuGet package manager, and add a reference to the latest version of the NuGet package named "CSHTML5" or "CSHTML5.Migration" (depending on whether you are using the normal edition or the "Silverlight Migration Edition"). Note: if you don't see it in the list of available packages, it's because you must check the option "include prerelease" next to the search field.
What's new since the Preview 0.3?
- Added support for ResX resource files (not localized yet)
- Fixed regression of Preview 0.2 when checking/unchecking a templated CheckBox
- Fixed an issue with a templated TextBox when removed and readded to the visual tree multiple times
What are the benefits of the 2.0 version?
- Whole new engine to convert C# to JS: now based on Bridge.NET instead of JSIL
- Better performance; Much faster load times; Smaller footprint; Minification
- Source maps (to debug in C# while running in the browser)
- Support for build servers and VSTS (Azure DevOps) for continuous delivery
- Support for newer C# versions (up to C# 7.2)
- Distributed as a NuGet package (and a .VSIX setup for project templates and design-time VS integration)
- Improved Mscorlib support, and errors are now also reported at Design-Time rather than Compile-Time
- Easier interop with JS frameworks (Angular, React, Vue...)
- Better leveraging of the browser cache
- Lots of bug fixes (support for "Post Build" event, support for the "dynamic" keyword...)
What are the known issues?
- The Simulator sometimes displays errors that do not happen when running in the browser (WCF warnings, DataContractSerializer error, Application.GetResourceString...). To test in the browser instead, please click "Run in browser" from the Simulator, or open the file "index.html" located in the "bin/Debug/Output" folder.
- The XAML Inspector (to debug the Visual Tree) may not work properly yet
- The XAML Editor being used is the one from CSHTML5 v1.x
Some regressions compared to v1.2 are expected while we are in this Preview phase.
Please report any issues as separate forum threads, so that we can easily track them and mark them as pending/solved.
We hope that you will enjoy this release and we thank all the people and companies that have helped us to make it possible.
The CSHTML5 Team
Attachment - the "New Project" dialog: