Как задать кодировку UTF-8 для всех страниц ASP .NET Core

На всех страницах, где есть русские символы появляются иероглифы. Причина в кодировке. Как задать глобально кодировку в ASP .NET Core 5? введите сюда описание изображения

введите сюда описание изображения

Шаблон
введите сюда описание изображения


Ответы (1 шт):

Автор решения: aepot

Пожалуйста прикладывайте код текстом, чтобы в следующий раз мне не пришлось перепечатывать его с картинки.

Если в лоб решать проблему кодировки, то вот так.

app.Run(async context =>
{
    context.Response.ContentType = "text/plain;charset=utf-8";
    await context.Response.WriteAsync("Привет!");
});

Смысл решения в том, что вы сообщаете браузеру явно с помощью HTTP заголовка Content-Type, что это в ответе просто текст, и какая у него кодировка.

Вообще пустой проект - это не практично, создайте MVC шаблон (например Web API) и пишите код в контроллере. Там не должно быть проблем с кодировками.

Желательно писать такие проекты под .NET 5 или 6, чтобы случайно не привыкнуть к устаревшим версиям ASP.NET.

→ Ссылка