Добро пожаловать на седьмой выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! В этот раз мы расскажем про .NET 10 preview 2 и 3, новый релиз Mono, множество интересных статей и, конечно же, AI. Команда PVS-Studio рада представить вам подборку самых интересных и полезных материалов. Поехали!

Мы стараемся совершенствоваться, так что будем рады вашим комментариям и предложениям :)
Не стесняйтесь присылать нам интересные материалы с помощью формы обратной связи!
Сегодня в дайджесте: .NET 10 preview 2 и 3, новый релиз Mono, улучшения AI в Visual Studio и множество интересных статей.
Главные новости
The 6.14.0 release of Framework Mono is now available
Разработчики Wine выпустили релизную версию Mono 6.14.0. Она содержит в себе изменения, которые накопились с выпуска последней версии пять лет назад. Это первый выпуск Mono, который появился после того, как Microsoft передала разработку в Wine.
Ключевые изменения в Mono 6.14.0:
добавлена поддержка macOS на системах с архитектурой ARM64;
улучшена поддержка сгенерированных COM-интерфейсов;
исправление ошибок и улучшение стабильности для
System.Windows.Forms
;исправлены некоторые случаи, когда процессы зависали при завершении.
.NET 10 Preview 2 is now available!
.NET 10 Preview 3 is now available!
Только мы рассказали в прошлом .NET Digest о выходе первой preview версии .NET 10, как уже вышли preview 2 и 3. Как обычно, изменения комплексные и затрагивают .NET Runtime, SDK, библиотеки и прочее. Вот список некоторых новшеств и улучшений:
поддержка частичных конструкторов и событий;
extension members. Новый синтаксис позволяет объявлять свойства расширения с помощью
extension
блоков;null-conditional присваивание. Теперь вы можете написать вот так:
customer?.Age = newAge
;
В предыдущем .NET Digest мы рассказывали про оптимизацию, появившуюся в .NET preview 1: массивы значимых типов аллоцируются на стеке при условии, что массив гарантировано не переживёт свой родительский метод. Теперь же разработчики расширили эту оптимизацию и на массивы ссылочных типов.
Статьи
Introducing automatic documentation comment generation in Visual Studio
Теперь Copilot, интегрированный в Visual Studio, способен автоматически создавать комментарии к функциям. Наконец-то Copilot поможет вам написать описание для вашего магического метода, который делает магию.

How we ended up rewriting NuGet Restore in .NET 9
Команда NuGet опубликовала статью, в которой описывается, как они решились полностью переписать алгоритм NuGet Restore для достижения прорыва в производительности и масштабируемости. Они приводят в пример проект, время восстановления которого снизилось с 32 минут до 2 минут. Кажется, что это просто волшебный результат.
Effortless adjustments with an adaptive paste
Теперь Visual Studio адаптирует вставленный код под ваш проект. Copilot предложит исправление стиля кода, незначительных ошибок и прочее. Всё это направлено на сокращение времени и упрощение выполнения рутинных и нудных действий при вставке скопированного кода. Теперь копировать со Stack Overflow будет ещё проще.
Hello HybridCache! Streamlining Cache Management for ASP.NET Core Applications
Новая статья от Microsoft про HybridCache
. Он доступен в виде пакета Microsoft.Extensions.Caching.Hybrid. HybridCache позволяет хранить кэш как в памяти, так и распределённо, например, используя Redis.
MSTest 3.8: Top 10 features to supercharge your .NET tests!
Microsoft постоянно работает над улучшением MSTest. В этой статье рассказывается про 10 лучших возможностей MSTest 3.8, такие как фильтрация тестов, автоматический перезапуск упавших тестов, OSConditionAttribute
для точного управления запуском и прочее.
Числовая сортировка (ещё называемая естественной сортировкой) упорядочивает строки в удобном для восприятия человеком виде, т. к. рассматривает числа обособлено. Ранее в .NET не было встроенной реализации, но в .NET 10 появится новый флаг CompareOptions.NumericOrdering
. Автор статьи рассматривает как новый способ через флаг, так и иные способы упорядочивания строк, используя числовую сортировку.
PVS-Studio в разработке на Unity: новые специализированные диагностики
По сей день Unity остаётся популярен у тысяч разработчиков. На этом движке созданы многие популярные игры. Насколько полезен был бы анализатор PVS-Studio разработчикам на Unity? Какие ошибки и возможности для оптимизации кода он мог бы помочь найти? Ответы на все эти вопросы вы найдёте в нашей статье.
Новости
Join the .NET & C# Teams at Microsoft Build 2025
Microsoft анонсировали ежегодную конференции Microsoft Build 2025. Она будет проходить 19-22 мая. Как обычно, будут доклады, касающиеся .NET: C#, .NET Aspire, .NET MAUI, ASP.NET Core и прочее.
AutoMapper and MediatR Going Commercial
Владелец проектов AutoMapper и MediatR опубликовал новость, что следующие версии библиотек станут платными для коммерческого использования.
Авторы проекта MassTransit сообщили, что, начиная с MassTransit v9, проект переходит на коммерческую модель лицензирования. Авторы считают, что это изменение поможет обеспечить стабильность в долгосрочной перспективе и поддержку корпоративного уровня. При этом MassTransit v8 остаётся открытым.
Introducing support for SLNX, a new, simpler solution file format in the .NET CLI
Microsoft представляет поддержку SLNX файла решения при работе с .NET CLI. Начиная с .NET SDK 9.0.200, .NET CLI поддерживает создание и работу с SLNX файлами. Ранее поддержка в экспериментальном формате появилась в Visual Studio 2022 и JetBrains Rider. Подробнее про новый вид файла решения можно прочитать в статье "New, Simpler Solution File Format".
Новые версии
В новой версии Rider 2025.1 предлагает более удобную навигацию по кодовой базе, обновление JetBrains AI Assistant, поддержку предварительных функций C# 14, улучшения отладки, обновления для разработчиков игр и многое другое.
Вышел новый релиз PVS-Studio — 7.36. В этом релизе для C# анализатора мы расширили возможности механизма пользовательских аннотаций. Теперь они могут содержать информацию, полезную не только для taint-анализа, но и для других задач. Например, можно указать, что метод может вернуть null
, что возвращаемое значение метода нужно использовать или что аргумент не должен быть равен null
, и ещё много чего.
Не обошлось и без новых диагностик:
V3218. Loop condition may be incorrect due to an off-by-one error.
V3219. The variable was changed after it was captured in a LINQ method with deferred execution. The original value will not be used when the method is executed.
V3220. The result of the LINQ method with deferred execution is never used. The method will not be executed.
V3221. Modifying a collection during its enumeration will lead to an exception.
V5629. OWASP. Code contains invisible characters that may alter its logic. Consider enabling the display of invisible characters in the code editor.
А запросить пробный ключ и попробовать последнюю версию анализатора можно с помощью этой страницы.
Спасибо за прочтение, и ждём вас снова! Не стесняйтесь присылать нам свои новости!
Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Artem Rovenskii. .NET Digest #7.
Комментарии (4)
Kerman
16.05.2025 14:54Теперь Copilot, интегрированный в Visual Studio, способен автоматически создавать комментарии к функциям.
Сомнительная функция. Обычно комментарий нужен там, где по коду не ясно, почему так сделано. А если по коду понятно, что метод делает, то комментарий не нужен. Особенно, от электронного болвана.
Proscrito
16.05.2025 14:54Это не просто комментарий, а документирование кода, xml-document comment, по ним компилятор генерит хмл-доку, и которые используются intellisense. Функция опупительно полезная, потому что документировать код разрабы обычно не имеют ни желания, ни времени. Это не имеет ничего общего с обычными комментариями.
Впрочем, обычные комменты болван обычно тоже неплохо пишет, если попросить. Но я сторонник того, что в этом смысле код должен комментировать себя сам, и если возникла нужда в комментах, лучше немного порефакторить сам код.
SergeyKovalev
Но ведь уже вышел .NET 10 preview 4.
rip_m Автор
.NET Digest (как и другие материалы PVS-Studio) публикуется не в день написания. Есть множество этапов (вычитки, перевод на английский и прочее), которые скрадывают время. Ждите .NET Digest 8 :)