Radzen .net 8 RC1 render mode support

I want to clarify that SSR was possible before .NET 8 by using this approach. We have used this with success in blazor.radzen.com and it is enabled by default for all WASM applications created with Radzen Blazor Studio. Also be aware of this PR which changes a lot of the rendermode API - it seems that the API in RC1 will not be the final one.

Every Blazor component which has any form of interactivity (fires events in response of user actions) requires a different rendering mode than static - server, wasm or auto. This includes most of of the Radzen.Blazor components. For example paging, sorting, filtering, selection, grouping are some features of RadzenDataGrid that won't work in static mode. The component will render just fine and look OK but no form of interactivity will be available. Some components that don't offer interactivity and will work without any limitations in static rendering mode are:

  • RadzenCard
  • RadzenRow
  • RadzenColumn
  • RadzenText
  • RadzenBadge
  • RadzenIcon
  • RadzenImage
  • RadzenStack
  • RadzenBreadCrumb
  • RadzenLink
  • RadzenAlert (without the close button which requires interactivity)
  • RadzenProgressBar

The simple rule of thumb is to answer the following questions:

  1. Is the component I plan to use interactive - does it change its state depending on user actions?
  2. Do I need this interactivity in my application?

If the answer to both is yes then you need to use this component with a rendering mode which is not static.

We believe it is the application developer's responsibility to decide what rendering mode they need and why. If they want interactivity they should set the render mode (and consider all limitations of doing that - for example not being able to have child content).

The simple answer is that every component that has interactivity needs a render mode which is not static. Of course if you need that interactivity - you can still render dropdowns that don't open, or buttons that do not fire click events.

3 Likes