XAF – Deploy ASP.NET Core Blazor Server Apps to Azure, Linux with Nginx or Windows with IIS or macOS with Electron

XAF Team Blog
19 October 2020

Azure Deployment

As you may already know, XAF's Blazor Server UI can be deployed to Azure. If you are new to Azure, please refer to the following Microsoft deployment topic: Host and deploy ASP.NET Core Blazor Server. Popular Azure deployment options include:

  1. The default option with no additional settings and no WebSockets.
  2. Application Request Routing (ARR).
  3. Azure SignalR Service. This option is supported in v20.2.3 (RTM) and requires additional setup in the SolutioName.Blazor.ServerSide/Startup.cs file. Note that the ProxyHubConnectionHandler class is available in the Blazor demo (C:\Users\Public\Documents\DevExpress Demos 20.2\Components\eXpressApp Framework\MainDemo.Blazor\CS\MainDemo.Blazor.ServerSide\Services\ProxyHubConnectionHandler.cs) included in our Unified Component Installer.
    public void ConfigureServices(IServiceCollection services) {
        services.AddSingleton(
            typeof(HubConnectionHandler<>), 
            typeof(ProxyHubConnectionHandler<>)
        );
       //...
    }

With v21.1.4, if you miss this important setting, you may receive the following error message:"ValueManagerStorageAccessor.Storage is null likely due to incorrect Azure SignalR Service or Blazor application settings".

Windows and Linux Deployment

Should you prefer Windows with IIS or Linux with Nginx, a number of XAF customers successfully deployed XAF's Blazor in these hosting environments. You may find these additional community resources helpful: 

When you deploy your Blazor apps to IIS, make certain to activate the following features: WebSocket Protocol and Sticky sessions with Application Request Routing (often forgotten by developers). BTW, our online Blazor demo is hosted on IIS: https://demos.devexpress.com/XAF/BlazorDemo/ 

Cross-Platform Desktop Apps with Electron.NET

You can build cross platform desktop apps with ASP.NET Core (Razor Pages, MVC, Blazor). Electron.NET is a wrapper around a "normal" Electron application with an embedded ASP.NET Core application. The current Electron.NET CLI builds Windows/macOS/Linux binaries.

For more information, see https://github.com/ElectronNET/Electron.NET and watch the following video by Joche Ojeda: XAF with Electron for Windows, MacOS and Linux

Free DevExpress Products - Get Your Copy Today

The following free DevExpress product offers remain available. Should you have any questions about the free offers below, please submit a ticket via the DevExpress Support Center at your convenience. We'll be happy to follow-up.
No Comments

Please login or register to post comments.