Start Debugging

Тег: dotnet

358 статей · Страница6из36

Как переопределить обработчик отказоустойчивости, который регистрирует Aspire
AddServiceDefaults в Aspire применяет стандартный обработчик отказоустойчивости к каждому HttpClient. Повторный вызов AddStandardResilienceHandler не заменяет его, а добавляет второй обработчик поверх первого. Здесь разобраны три реальных способа переопределения, недокументированное имя настроек -standard и бесконечный тайм-аут, который вы получаете, если просто удалить обработчик.
Как запустить файловое приложение на C# командой `dotnet run app.cs` в .NET 11
Полное руководство по файловым приложениям на C#: запуск одного файла .cs через dotnet run, директивы #:package, #:sdk, #:property, #:project и #:include, многофайловые скрипты с #:ref, обработка аргументов и stdin, кеш сборки, публикация с native AOT, упаковка в виде инструмента dotnet и dotnet project convert, когда скрипт перерастает себя.
Aspire против Docker Compose для локальной разработки с несколькими сервисами
Aspire 13.4.6 выигрывает внутренний цикл разработки .NET, потому что запускает ваши проекты как процессы хоста, которые можно отлаживать, а Docker Compose выигрывает, когда compose-файл одновременно является вашим контрактом для CI и развёртывания. Измеренные времена запуска и цикла правка-выполнение для обоих, конфигурация, которую каждый инструмент внедряет за вас, и шесть тонкостей, которые решают дело.
2026-08-07 dotnettestingci-cd
Microsoft.Testing.Platform 2.3: --report-gh выводит падения тестов прямо в diff пул-реквеста
Статья в блоге .NET от 2026-08-06 про отчёты MTP показывает набор расширений, ставших стабильными в Microsoft.Testing.Platform 2.3.0: аннотации GitHub Actions, устойчивая к падениям запись TRX и история нестабильности в Azure DevOps.
WebApplicationFactory против Testcontainers для интеграционных тестов в ASP.NET Core
Это не альтернативы. WebApplicationFactory поднимает ваше приложение, Testcontainers поднимает его зависимости. Измерено на .NET SDK 10.0.201: фикстура с контейнером стоит 1.7 с на класс против 10 мс у SQLite, а нарушение HasMaxLength(16), которое Postgres отклоняет с кодом 22001, SQLite молча принимает.
xUnit v3 vs NUnit vs MSTest в 2026 году: что выбрать?
Выбирайте xUnit v3 для новых проектов на .NET, NUnit 4.6, если вы живёте в его модели ограничений, и MSTest 4, если он у вас уже в проде. Измеренное сравнение на .NET SDK 10.0.201: значения параллелизма по умолчанию, жизненный цикл тестового класса, вывод при провале утверждений и конфликт версий Microsoft.Testing.Platform, ломающий runner NUnit.
gRPC vs REST vs SignalR для вызовов между сервисами в .NET 11
Для внутренних вызовов между сервисами в .NET 11 по умолчанию выбирайте gRPC, когда вы владеете обеими сторонами контракта и вызов идёт точка-точка. Используйте REST с JSON, когда сервис должен вызывать что-то, что вы не контролируете. SignalR не является RPC-транспортом между сервисами: обращайтесь к нему только тогда, когда один производитель должен разослать сообщение многим долгоживущим потребителям.
Назад Вперёд