Blazor PageTitle tag not working after migrating to .NET Core 6

Viewed 649

I tried to configure the page title in my Blazor Server application but, unfortunatelly, the tag <PageTitle> not working. This project was started before Microsoft release .NET Core 6 and, after that, I migrated my application to this version.

There aren't errors in compiling or running.

Example page:

@page "/page"

<PageTitle>My page title</PageTitle>

...
1 Answers

For using the <PageTitle> tag with the new version of .NET Core, server-side and not webAssembly, you need replace your <title> tag with a new component and add his library into the file Pages/_Host.cshtml.

@using Microsoft.AspNetCore.Components.Web

<head>
  <component type="typeof(HeadOutlet)" render-mode="ServerPrerendered" />
</head>

Project scafolding created from .Net Core 6 add these parts automatically in Pages/_Layout.cshtml

Teorically, users with migrating WebAssembly projects need add too the code on below in Program.cs

builder.RootComponents.Add<HeadOutlet>("head::after");
Related