We are excited to inform you that the third 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.3 (Alpha26-041) (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)
- 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". 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.2?
- Improved Simulator support
- Improved compilation time of projects with large WCF references
- Added support for reading ".clientconfig" files via Application.GetResourceStream(...) and fixed the "mime type" of ".config" and ".clientconfig" files.
- Added support for templating the RadioButton and the PasswordBox (by the way, a "Material Design Styles Kit" is coming soon, stay tuned)
- Fixed the "Showcase" project template
- Fixed an issue that sometimes caused the "disabled" visual state to not be applied until hovering with the pointer
- Fixed exception related to the "TextDecorations" property
- Fixed the "mime type" of JSON files read via Application.GetResourceStream
- Fixed regression that caused the "TextBox.PlaceholderText" property to not be available
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 Editor being used is the one from CSHTML5 v1.x
- ResX files are not fully functional yet
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: