Telerik blogs

With Microsoft’s release of .NET 8, Telerik UI for ASP.NET Core and UI for Blazor offer full compatibility. See what this means for your favorite component libraries now and as we look to the future.

We are happy to announce that, coinciding with the official release day of .NET 8, the Telerik UI for Blazor and Telerik UI ASP.NET Core libraries are fully compatible with the newly released framework. This alignment allows developers to immediately utilize the advanced capabilities and performance benefits of .NET 8, while continuing to enjoy the rich set of UI components Progress Telerik provides. Let’s explore some of the key .NET 8 new features together.

For a deep-dive into .NET 8 join us in a dedicated webinar on December 13: Discover the Magic of .NET 8 and Beyond.

.NET 8 New Features and Their Benefits

Refined Rendering Modes

Blazor’s new rendering modes provide more control over how UI updates are handled, allowing developers to select the most suitable rendering strategy for their application:

Static Server Rendering (SSR)

Static render mode is the default setting for all components, which results in the component being rendered to the response stream, and does not enable interactivity.

Efficient for apps that don’t require client-side interactivity, as it minimizes the amount of JavaScript needed, improving load times and SEO. In the provided example, the component’s rendering mode isn’t explicitly set, so it adopts the default behavior from its parent context. As a result, the component is statically rendered server-side.

In the below example, the button isn’t interactive and does not call the OnClickHandler method when selected.

Example:

@page "/render-mode-ssr"

<TelerikButton OnClick="@OnClickHandler">Hello!</TelerikButton>

@result

@code {
    private string result;

    private async Task OnClickHandler()
    {
        result = DateTime.Now.ToString();
    }
}

Interactive Server Rendering

The Server render mode renders the component interactively from the server using Blazor Server. This mode handles user interactions over a real-time connection with the browser, and the circuit connection is established when the Server component is first rendered.

It is ideal for apps with interactive UIs but also needing server-side logic. This mode can help minimize client resources usage while still providing a rich interactive experience.

Example:

@page "/render-mode-interactive-server"
@rendermode RenderMode.InteractiveServer

<TelerikButton OnClick="@OnClickHandler">Hello!</TelerikButton>

@result

@code {
    private string result;

    private async Task OnClickHandler()
    {
        result = DateTime.Now.ToString();
    }
}

Interactive WebAssembly Rendering

The WebAssembly render mode operates by interactively rendering the component on the client with Blazor WebAssembly. The .NET runtime and the application’s bundle are fetched and cached at the initial rendering of the WebAssembly component.

This render mode is well suited for apps with complex client-side logic, allowing for a rich interactive user experience while leveraging client resources for rendering.

Example:

@page "/render-mode-interactive-client"
@rendermode RenderMode.InteractiveWebAssembly

<TelerikButton OnClick="@OnClickHandler">Hello!</TelerikButton>

@result

@code {
    private string result;

    private async Task OnClickHandler()
    {
        result = DateTime.Now.ToString();
    }
}

Auto Render Mode

Auto Render Mode dynamically chooses the rendering method at runtime, initially using Blazor Server for server-side rendering, and transitioning to Blazor WebAssembly for client-side rendering on subsequent visits, after client-side resources have been cached. This adaptive rendering approach optimizes the initial load time and enhances interactivity on subsequent visits without requiring developers to decide upfront which rendering model to use.

Example:

@page "/render-mode-auto"
@rendermode RenderMode.InteractiveAuto

<TelerikButton OnClick="@OnClickHandler">Hello!</TelerikButton>

@result

@code {
    private string result;

    private async Task OnClickHandler()
    {
        result = DateTime.Now.ToString();
    }
}

For more information, take a look at ASP.NET Core Blazor render modes.

Unified Blazor Web App Project Template

The new unified project template consolidates Blazor Server and Blazor WebAssembly hosting models, simplifying the setup and development process. It also introduces static server rendering and streaming rendering, which allows for incremental content delivery, improving perceived load times and user experience.

If you want to learn more about the new Blazor Web App template, check the following articles:

Render Razor Components Outside of ASP.NET Core

.NET 8 introduces the ability to render Razor components outside of ASP.NET Core. This feature provides more flexibility by allowing developers to use Razor components in scenarios where ASP.NET Core isn’t used, such as in console applications or other .NET workloads, expanding the utility of Razor components beyond traditional web applications.

ASP.NET Core: Miscellaneous Improvements

.NET 8 brings a series of technical improvements to ASP.NET Core. There’s a new metrics API for detailed performance tracking, and SHA-3 hashing extends cryptographic options. HttpClient now supports HTTPS proxies for secure, private communications. Stream-based ZipFile methods enhance file handling without relying on disk storage. A source generator for options validation reduces startup time, and updated LoggerMessageAttribute constructors offer more logging flexibility.

Additionally, there are performance-focused updates with new tensor operation APIs for AI and machine learning applications, showcasing .NET’s commitment to high-performance computing.

These enhancements contribute to the robustness, performance and security of applications developed with ASP.NET Core in .NET 8. For a comprehensive overview, please take a look at the official .NET 8 documentation.

What’s Next ?

Telerik UI for Blazor and Telerik UI for ASP.NET Core are set to fully support the upcoming .NET 9 framework, ensuring that developers can leverage the latest enhancements in their web projects.

Blazor developers can look forward to a new collection of components, including a multifunctional Spreadsheet component, DockManager component for advanced layout management, and PopUp/PopOver component for enriched user interactions.

For ASP.NET Core, the emphasis will be on assisting those transitioning from desktop to web development, with components like the PropertyGrid making the shift more intuitive.

Performance is a key focus as well. Expect to see improvements in DataGrids across both UI libraries, aimed at delivering faster data handling and rendering. This step is a part of our ongoing effort to maintain Telerik UI’s leading edge in the world of UI component libraries.

There’s more on the horizon—stay updated with our developments by keeping tabs on our public roadmap.

We are grateful for your ongoing support and invite you to continue sharing your suggestions and requests via the dedicated Feedback Portal. Let’s craft the future direction of Telerik UI together.

Welcome to .NET 8 Webinar on December 13

Join us on December 13 at 11:00 am ET for the .NET 8 webinar and get up to date with the .NET 8 journey so far and all the hot news in the .NET world across the web, mobile, cross-platform and desktop.

Register Today


About the Author

Lyubomir Atanasov

Lyubomir Atanasov is a Product Manager with a passion for software development, UI design, and design thinking. He excels in creating impactful and innovative software products by challenging the status quo, collaborating closely with customers, and embracing a spirit of experimentation. His dedication to delivering exceptional UI solutions makes him an invaluable asset, providing immense value through his expertise and innovative approach. Follow him on LinkedIn.

Related Posts

Comments

Comments are disabled in preview mode.