После обновления до .NET 9 простой оператор C# вызывает фатальную ошибку в Visual Studio 2022, когда для выхода используC#

Место общения программистов C#
Ответить
Anonymous
 После обновления до .NET 9 простой оператор C# вызывает фатальную ошибку в Visual Studio 2022, когда для выхода использу

Сообщение Anonymous »

Я заметил, что .NET 9 теперь доступен в качестве опции в Visual Studio 2022, поэтому попробовал выполнить обновление с .NET 8. Мои приложения продолжают работать должным образом, но есть одна проблема: я получаю фатальную ошибку при остановке консольных приложений с помощью Control-C.
Вот какую ошибку я получаю:
Изображение

Это относится ко всем моим консольным приложениям, использующим класс WebBuilder. Самая простая программа, которая постоянно вызывает ошибку:

Код: Выделить всё

internal class Startup
{
public static async Task Main(string[] args)
{
await WebApplication.CreateBuilder().Build().RunAsync();
}
}
Этот код был введен в новый консольный проект в новом решении, где верхняя строка в файле проекта была изменена на: Кроме того, файл launchsettings.json был удален, чтобы предотвратить запуск браузера Brave при запуске приложения. Ошибка по-прежнему возникает, даже если этот файл присутствует; Я просто удалил его, чтобы исключить Brave из уравнения.
Само приложение работает нормально. Только завершение работы, вызванное нажатием Control-C или нажатием кнопки закрытия (X) в окне консоли, немедленно вызывает фатальную ошибку без записи подсказок в журнал событий.
Интересно, что когда приложение завершает работу с помощью IHostApplicationLifetime.StopApplication, завершение работы происходит плавно. Ошибок нет.
Запуск приложения из командной строки Powershell вместо отладчика приводит к исчезновению ошибки. Ошибка проявляется только при подключении отладчика.
Возврат проекта с .NET 9 обратно на .NET 8 также приводит к исчезновению ошибки.
Поиск этой конкретной ошибки ничего не дает. Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/788 ... or-in-visu
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»