en
Feedback
Amazing .NET

Amazing .NET

Open in Telegram

В этот канал публикуются интересные материалы, связанные с .NET тематикой. Без рекламы и прочей х*йни. Идеи и предложения: https://github.com/Chakrygin/amazing-dotnet/issues Или в личку: @ichakrygin См. также: https://t.me/amazing_devops

Show more
1 817
Subscribers
-224 hours
+17 days
+330 days
Posts Archive
There is no thread: OS async I/O and the .NET thread pool Meziantou's blog | Gérald Barré | October 6, 2026 This post is part of the series 'Async/await in C#'. Be sure to check out the rest of the blog posts of the series! https://www.meziantou.net/there-is-no-thread-os-async-i-o-and-the-dotnet-thread-pool.htm 🏷️ .NET

What Would You Build in Azure If You Didn’t Have to Ask for a Budget First? DevBlogs | Visual Studio Blog | October 6, 2026 M
What Would You Build in Azure If You Didn’t Have to Ask for a Budget First? DevBlogs | Visual Studio Blog | October 6, 2026 Maybe you’d deploy that .NET application you’ve been working on. Try a serverless architecture. Experiment with containers. Build a proof of concept. Or spend some time exploring an Azure service you haven’t used yet. If you’re an eligible Visual Studio subscriber, you may already have a personal Azure sandbox waiting for you. Many Visual Studio Subscriptions include Azure credits, giving developers a simple way to explore Azure, build skills, develop applications, and experiment with cloud services without first needing a separate Azure budget. https://devblogs.microsoft.com/visualstudio/what-would-you-build-in-azure-if-you-didnt-have-to-ask-for-a-budget-first/

Stripping extra dependencies in .NET NativeAOT apps using linker substitutions .NET Escapades | Andrew Lock | October 6, 2026
Stripping extra dependencies in .NET NativeAOT apps using linker substitutions .NET Escapades | Andrew Lock | October 6, 2026 In this post I describe how to perform method-substitutions with the NativeAOT linker to remove additional dependencies that the linker couldn't see were unused. https://andrewlock.net/stripping-extra-dependencies-in-.net-nativeaot-apps-using-linker-substitutions/ 🏷️ .NET Core, Observability

Why async exists: the cost of blocking a thread Meziantou's blog | Gérald Barré | October 5, 2026 This is the first post of a series about async/await in C#. Before looking at how it works, it is worth being precise about what problem it solves, because the usual explanations are either vague ("it makes your app faster") or wrong ("it runs your code in the background"). async/await does not make anything faster. A network call takes as long as it takes. What it changes is what your process does while waiting, and that turns out to matter a great deal. https://www.meziantou.net/why-async-exists-the-cost-of-blocking-a-thread.htm 🏷️ .NET

dotInsights | October 2026 The JetBrains Blog | .NET Tools | October 5, 2026 C# 15 Collection Expression Arguments: What’s Ne
dotInsights | October 2026 The JetBrains Blog | .NET Tools | October 5, 2026 C# 15 Collection Expression Arguments: What’s New vs C# 12 and 13: https://laurentkempe.com/2026/09/26/csharp-15-collection-expression-arguments/ Creating an Account UI in .NET MAUI: https://www.telerik.com/blogs/creating-account-ui-net-maui Adding Properties with extension methods in C# 14: https://steven-giesel.com/blogPost/4368fcea-c922-403e-bb3b-6b4990eb36d2 Control Flow Obfuscation: A Practitioner’s Guide for .NET and Java Teams: https://www.preemptive.com/blog/control-flow-obfuscation/ The hidden trap of fixed buffers in C#: https://minidump.net/the-hidden-trap-of-fixed-buffers-in-csharp/ Interactive Terminals in the Browser with Aspire and .NET!!!: https://www.youtube.com/watch?v=YMyo16QX4I0 https://blog.jetbrains.com/dotnet/2026/10/05/dotinsights-october-2026/ 🏷️ dotInsights

UWP and WinUI 3 apps: UI testing with MSTest DevBlogs | .NET Blog | October 5, 2026 Reliable testing of UWP and WinUI 3 apps
UWP and WinUI 3 apps: UI testing with MSTest DevBlogs | .NET Blog | October 5, 2026 Reliable testing of UWP and WinUI 3 apps needs the app’s real UI dispatcher, not just a single-threaded apartment (STA) thread, so that test setup, async test code, and cleanup all run with UI-thread access. A WinUI 3 test still looks this simple: https://devblogs.microsoft.com/dotnet/testing-uwp-and-winui-3-apps-with-mstest/

143 выпуск. Мудрёный hill-climbing, опасный supply chain, полезный memory dump RadioDotNet | October 4, 2026 [00:01:30] — Cre
143 выпуск. Мудрёный hill-climbing, опасный supply chain, полезный memory dump RadioDotNet | October 4, 2026 [00:01:30] — Creating a memory dump in C# [00:18:10] — Building a Supply Chain Attack with .NET and NuGet [00:53:10] — Разбор hill-climbing в .NET 9 [01:17:00] — What Runs Before Main() and Why It Sometimes Hangs [01:39:00] — Кратко о разном Слушать на Яндекс.Музыке: https://music.yandex.ru/album/12041961 Слушать на YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3SpQ9GRn2jv-NEpvN23CUC5 Слушать на Mave: https://radiodotnet.mave.digital/ep-144 Поддержать на Boosty: https://boosty.to/radiodotnet

О пользе ограничений в MSSQL Хабр | Блог компании Контур | 30 сентября 2026 г. Мы привыкли, что ограничения (CONSTRAINT) — это способ указания допустимых значений для столбцов, ограничение уникальности и создание связей между таблицами. Это отличный способ поддерживать целостность данных, предотвращая некорректные операции. Но помимо этого, ограничения также помогают оптимизатору запросов генерировать более эффективный план выполнения. Как именно? Читайте ниже. https://habr.com/ru/companies/skbkontur/articles/1082258/ 🏷️ .NET, SQL, Базы данных, Программирование

Поменяли object на Lock, и два потока встретились в критической секции Хабр | Блог компании OTUS | 30 сентября 2026 г. В .NET 9 появился новый примитив синхронизации System.Threading.Lock, и многие команды начали заменять привычные object-замки на новый тип в поисках более предсказуемого поведения и производительности. Но такая замена меняет саму механику работы lock: достаточно одного места, где экземпляр потеряет свой тип, чтобы два участка кода перестали синхронизироваться между собой. В статье разберемся, как именно устроена новая модель блокировок в C#, где компилятор помогает заметить проблему, а где она остаётся скрытой, и стоит ли переходить на Lock ради заявленных преимуществ. https://habr.com/ru/companies/otus/articles/1087292/ 🏷️ .NET, C#, Программирование

Multi-Tenant Best Practices Can Backfire CodeOpinion | Derek Comartin | September 24, 2026 You have a multi-tenant system, bu
Multi-Tenant Best Practices Can Backfire CodeOpinion | Derek Comartin | September 24, 2026 You have a multi-tenant system, but you discover a pretty horrible bug. How can that be? You followed all the best practices! Your HTTP API places a message on a queue to generate an invoice. A background process picks up that message and executes it. Everything looks like it worked. There were no exceptions, no failed database calls, and no errors in your logs. However, something went horribly wrong. https://codeopinion.com/multi-tenant-best-practices-can-backfire/ 🏷️ Architecture

50 минут руками — 5 минут автоматически. Или как я майнер удалял Хабр | 28 сентября 2026 г. Думаю, многие из вас знают, что такое майнер, а если нет, то вкратце — это программа, которая использует ресурсы компьютера для добычи (майнинга) криптовалюты. Сам по себе майнер не является вирусом, но есть те, кто им злоупотребляет, распространяя его скрытую вариацию под видом пиратского софта и сборок с играми. Вэтой истории я расскажу, как столкнулся с таким майнером и потратил почти час на ручное удаление, как это позже удалось автоматизировать, и как уже из этого зародилась утилита по устранению таких майнеров. https://habr.com/ru/articles/1087634/ 🏷️ .NET, C#, Windows, Антивирусная защита, Информационная безопасность

Visual Studio September Update – Power Your Workflow with Your Model DevBlogs | Visual Studio Blog | September 29, 2026 The b
Visual Studio September Update – Power Your Workflow with Your Model DevBlogs | Visual Studio Blog | September 29, 2026 The best LLM in Visual Studio is the one you choose. This month’s update puts that idea front and center: pick the model that fits how you work, then use it everywhere GitHub Copilot already helps you today, from fixing vulnerable packages to reviewing pull requests. And once you’re in the editor, you’ll find sharper debugging tools too, whichever model is doing the thinking alongside you. Grab the Visual Studio 2026 Stable Channel update and let us know what’s working and where we should invest next. https://devblogs.microsoft.com/visualstudio/visual-studio-september-update-power-your-workflow-with-your-model/

OLAP OVER HTTP: как отдавать большие аналитические данные через API и не положить сервис Хабр | Блог компании Ozon Tech | 28 сентября 2026 г. Каждый день в 18:00 клиентам становится доступна отчётность по продажам, и многие одновременно нажимают кнопку «Загрузить отчёт». Это может быть детализированный отчёт по списаниям, юридическая отчётность, аналитическая выгрузка или API, используя который клиент получает данные для дальнейшей обработки. В этот момент даже хорошо подобранное хранилище может стать узким местом. В моей практике разработки часто встречаются сценарии, когда необходимо предоставить доступ к большому количеству данных по HTTP. На первый взгляд задача выглядит простой: берём подходящее хранилище, пишем endpoint, выполняем запрос и отдаём результат пользователю. Но на практике такая схема быстро упирается в ограничения. https://habr.com/ru/companies/ozontech/articles/1084762/ 🏷️ .NET, Базы данных, Высоконагруженные системы, Хранение данных

Adding JsonPath support to custom object models in .NET Meziantou's blog | Gérald Barré | September 28, 2026 In Using JsonPath with System.Text.Json to query JSON in .NET, we used JsonNode as the input type. If your data is already loaded in domain classes, you can evaluate JsonPath directly on those classes without converting to JsonNode. Meziantou.Framework.JsonPath exposes JsonPathNavigator<TValue> for this scenario. You provide JSON-like navigation semantics for your node type, and the evaluator does the rest. This is the same approach as in XPath for custom types in .NET, where we exposed custom objects to XPath by implementing an XPathNavigator: you expose navigation primitives through a navigator, and the query engine handles expression evaluation. https://www.meziantou.net/adding-jsonpath-support-to-custom-object-models-in-dotnet.htm 🏷️ .NET

Rider 2026.2.3 Is Released! The JetBrains Blog | .NET Tools | September 28, 2026 Rider 2026.2.3 brings AI performance analysi
Rider 2026.2.3 Is Released! The JetBrains Blog | .NET Tools | September 28, 2026 Rider 2026.2.3 brings AI performance analysis to the Monitoring tool window and fixes an issue with the AI Agent Setup widget on Windows. You can update directly from the IDE, through the Toolbox App, or by downloading the latest version from our website. https://blog.jetbrains.com/dotnet/2026/09/28/rd-2026-2-3/ 🏷️ AI, Performance monitoring, Release, Rider, dotTrace

Build Agentic UI with the new Blazor AI components DevBlogs | .NET Blog | September 28, 2026 AI enables natural and powerful
Build Agentic UI with the new Blazor AI components DevBlogs | .NET Blog | September 28, 2026 AI enables natural and powerful ways for people to interact with software through language, voice, and vision. Applications with agents go further by helping users accomplish work. Agents can gather context, use tools, propose plans, update shared artifacts, and carry multi-step tasks forward in collaboration with the user. These capabilities create new possibilities for application design and new challenges. Agent output may arrive incrementally. Users need visibility into what an agent is doing and control over consequential actions. The user, agent, and application may all contribute to shared state. The resulting experience needs to remain understandable and responsive as the work evolves. https://devblogs.microsoft.com/dotnet/build-agentic-ui-blazor/

Как найти повреждённое колесо поезда, не перегоняя состав Хабр | 26 сентября 2026 г. Исследование моего отца по износу железнодорожных колёс, программа, которую он попросил меня написать, и патент, который за этим последовал. https://habr.com/ru/articles/1087028/ 🏷️ .NET, Транспорт, Читальный зал

AG-UI Protocol now has a first-class .NET SDK DevBlogs | .NET Blog | September 25, 2026 The .NET team is pleased to announce
AG-UI Protocol now has a first-class .NET SDK DevBlogs | .NET Blog | September 25, 2026 The .NET team is pleased to announce that we’ve contributed a .NET SDK for AG-UI in collaboration with CopilotKit. The AG-UI .NET SDK lives in the AG-UI repository alongside the TypeScript and Python SDKs, published on NuGet under the MIT license. Any .NET service can now speak AG-UI directly. The Microsoft Agent Framework (MAF) AG-UI support for .NET is now based on the AG-UI .NET SDK. https://devblogs.microsoft.com/dotnet/ag-ui-dotnet-sdk/

Avalonia UI и Linux Embedded: делаем Grafana-дашборд на старом Raspberry Pi и древнем 32-битном OrangePi Хабр | Блог компании ЭРЕМЕКС | 23 сентября 2026 г. В этой статье расскажем, как сделали информационную панель для офиса. Мы написали приложение на Avalonia UI, которое забирает данные из Grafana через REST API и рисует их напрямую, а затем запустили его на старых одноплатных компьютерах — без браузера, рабочего стола и оконного менеджера. https://habr.com/ru/companies/eremexru/articles/1085474/ 🏷️ .NET, Linux, Интерфейсы

Microsoft is updating its author-signing certificate starting September 23, 2026 DevBlogs | .NET Blog | September 23, 2026 Ac
Microsoft is updating its author-signing certificate starting September 23, 2026 DevBlogs | .NET Blog | September 23, 2026 Action required: If you validate that packages are author-signed by Microsoft using a NuGet client policy or the dotnet nuget verify command, follow the steps in this post as soon as possible to avoid potential disruptions during the transition. If you are unsure whether you are impacted, follow the steps below to check. https://devblogs.microsoft.com/dotnet/microsoft-author-signing-certificate-update-2026/