Blazor now in official preview
24 Apr 2019Some days ago, the ASP.NET team announce the official preview of Blazor, the Microsoft framework for building Single Page Application. Note that in the post, they declare that Server-Side Blazor will ship as part of .NET Core 3.0, announced for second half 2019, while Client-side Blazor will ship as part of a future .NET Core release.
Upgrade to Blazor preview
To upgrade your existing Blazor apps to the new Blazor preview first make sure you’ve installed the prerequisites listed above then follow these steps:
- Update all
Microsoft.AspNetCore.Blazor.*
package references to 3.0.0-preview4-19216-03 by changing thePackageReference
incsproj
with this:<PackageReference Include="Microsoft.AspNetCore.Blazor" Version="3.0.0-preview4-19216-03" />
- Remove any package reference to
Microsoft.AspNetCore.Components.Server
- Remove any
DotNetCliToolReference
toMicrosoft.AspNetCore.Blazor.Cli
and replace with a package reference toMicrosoft.AspNetCore.Blazor.DevServer
- In client Blazor projects remove the
<RunCommand>dotnet</RunCommand>
and<RunArguments>blazor serve</RunArguments>
properties - In client Blazor projects add the
<RazorLangVersion>3.0</RazorLangVersion>
property - Rename all
_ViewImports.cshtml
files to_Imports.razor
- Rename all remaining
.cshtml
files to.razor
- Rename
components.webassembly.js
toblazor.webassembly.js
- Remove any use of the
Microsoft.AspNetCore.Components.Services
namespace and replace withMicrosoft.AspNetCore.Components
as required. - Update server projects to use endpoint routing:
Replace this:
app.UseMvc(routes =>
{
routes.MapRoute(name: "default", template: "{controller}/{action}/{id?}");
});
With this:
app.UseRouting();
app.UseEndpoints(routes =>
{
routes.MapDefaultControllerRoute();
});
Run dotnet clean on the solution to clear out old Razor declarations.
https://devblogs.microsoft.com/aspnet/blazor-now-in-official-preview/
Enjoy!