.NET / C# – Telegram
.NET / C#
3.93K subscribers
2.13K photos
40 videos
1 file
3.66K links
Лучшие материалы по разработке на платформе .NET и языке C#

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Как голосовой робот выдержал 1000 звонков

В статье описывают разработку масштабного голосового робота: Asterisk + .NET не выдержали gRPC при тысячах одновременных звонков; переписанная на Go голосовая часть и микросервисы обеспечили стабильную двунаправленную передачу, расшифровки и нотификации. Миграция голосовых сервисов: .NET → Go — опыт и проблемы
В статье автор рассказывает, как семь критичных сервисов переехали с .NET на Go: задержка в разговоре упала до 1.5 с, но появились сложности с отладкой, тестированием, балансировкой TCP в k8s, управлением стейтами и ростом бюджета.

Читать подробнее: https://habr.com/ru/articles/958524/

#ru

@dot_net_c_sharp | Другие наши каналы
🤣5
C#: исчерпывающий switch — OneOf vs static-cs

В статье объясняется, как в C# моделировать алгебраические типы (DU) на примере банковских аккаунтов и получать исчерпывающий switch. Сравнивают OneOf (дженерики и Match) и static-cs (Closed‑атрибут, вложенные record и Roslyn‑анализатор).

Читать подробнее: https://habr.com/ru/articles/958876/

#ru

@dot_net_c_sharp | Другие наши каналы
👎1
Новое в C# 13–14: главное
В статье обзор ключевых нововведений: ключевое слово field, модификаторы в лямбдах, перегрузки присваиваний, extension members (свойства расширений), неявные преобразования к Span и partial‑конструкторы. Читайте статью.

Читать подробнее: https://habr.com/ru/companies/pvs-studio/articles/959126/

#ru

@dot_net_c_sharp | Другие наши каналы
3
Eremex Controls 1.2 — обновление для Avalonia.
В релизе: многоуровневые бэнды в DataGrid/TreeList, фильтры в заголовках, экспорт XLSX/PDF с сохранением группировок и форматирования, улучшения DockManager, пакет на nuget.org. Подробности на Хабре и сайте компании.

Читать подробнее: https://habr.com/ru/companies/eremexru/articles/959034/

#ru

@dot_net_c_sharp | Другие наши каналы
Дампы в T‑Телефонии: как находят и решают сбои
В статье показано, как собирать и анализировать дампы .NET (dotnet‑monitor, WinDBG, DotMemory), находить утечки памяти, дедлоки и проблемы в Oracle, Redis и ZooKeeper, и какие практические решения помогают в высоконагруженных сервисах.

Читать подробнее: https://habr.com/ru/companies/tbank/articles/955140/

#ru

@dot_net_c_sharp | Другие наши каналы
This media is not supported in your browser
VIEW IN TELEGRAM
От чат‑бота к агентам: Microsoft Agent Framework в .NET
В статье показано как на базе .NET AI templates улучшить чат‑приложение: добавить Microsoft Agent Framework для рассуждений, использования инструментов и оркестрации. Описаны создание проекта, Program.cs, установка пакетов и вынос функций поиска. AI-агент в .NET: поиск, инструменты и телеметрия

Статья показывает, как зарегистрировать AI Agent через Agent Framework, применить SearchAsync как инструмент, настроить Azure OpenAI и векторное хранилище, включить OpenTelemetry и тестировать через .NET Aspire. Упомянуты расширения и мультиагенты. Microsoft Agent Framework для .NET: быстрое руководство

В статье показано, как создавать и координировать AI‑агентов, добавлять кастомное middleware, тестировать и оптимизировать вызовы инструментов, а также развёртывать решения в Azure с примерами кода.

Подробности: https://devblogs.microsoft.com/dotnet/upgrading-to-microsoft-agent-framework-in-your-dotnet-ai-chat-app/

#en

@dot_net_c_sharp | Другие наши каналы
NuGet.org запускает Sponsorship

NuGet.org запустил функцию Sponsorship: авторы пакетов могут добавить ссылки на GitHub Sponsors, Patreon, Open Collective и другие. На странице пакета появится кнопка «Sponsor», с помощью которой пользователи могут перейти на сторонние сервисы и поддержать разработчиков.

Подробности: https://devblogs.microsoft.com/dotnet/announcing-sponsorship-on-nugetdotorg-for-maintainer-appreciation/

#en

@dot_net_c_sharp | Другие наши каналы
👍2
C# опережает спецификацию — что пошло не так?

В статье автор прослеживает эволюцию C#: рост фич и ключевых слов, ускоренное внедрение новых возможностей (records, nint/nuint, ref/primary constructors) опережает ECMA‑334 и порождает практические и дизайнерские проблемы.

Читать подробнее: https://habr.com/ru/articles/959980/

#ru

@dot_net_c_sharp | Другие наши каналы
Langfuse + .NET через OpenTelemetry

В статье показан пример интеграции Langfuse с .NET через OpenTelemetry: локальный запуск в Docker, проект ASP.NET Core Minimal API, ключевые NuGet-пакеты и значение AddSource/ActivitySource для отправки трасс. Как добавить трассировку AI-запросов для Langfuse

В статье показан пример на C#: AiService оборачивает вызов ChatClient в Activity с тэгами Input/Output для привязки в Langfuse, возвращает Trace ID, есть пример curl, визуализация и ссылка на GitHub.

Читать подробнее: https://habr.com/ru/articles/960156/

#ru

@dot_net_c_sharp | Другие наши каналы
Context EXpressions — быстрый парсер математических выражений

Автор представил библиотеку для разбора строк и быстрого вычисления выражений с подставляемым контекстом (переменные в словаре). Поддерживаются + - * / ^, скобки и разделители ; , . Код на GitHub, обсуждение в Telegram-канале.

Читать подробнее: https://habr.com/ru/articles/960298/

#ru

@dot_net_c_sharp | Другие наши каналы
Какие приложения установить на Windows и macOS

Список разбит по категориям: от браузеров и гейминга до утилит безопасности и инструментов для продуктивности.

Читать: «Какие приложения установить на Windows и macOS»

#ru

@dot_net_c_sharp | Другие наши каналы
Лупа Windows без дрожания в играх
В статье показано, как с помощью лёгкой утилиты переназначить клавишу (например F12) для вызова лупы в режиме «Закреплено». Решение даёт стабильность, удобство и безопасность с точки зрения античитов; инструкция и ссылка доступны в материале. Одна кнопка для Лупы Windows — центр курсора и масштаб

В статье показано, как привязать горячую клавишу: PowerShell центрирует курсор, затем эмулируется Ctrl+Alt+- для системной Лупы. Есть инструкция по настройке, советы для игр и примечания по работе в Windows. Минималистичный зум на уровне ОС — быстро и безопасно

Коротко о решении для настраиваемого масштабирования экрана: всего 2 системных вызова, прозрачная работа без скрытых функций, совместимость через PowerShell. Используются keyboard, pyautogui, rich. Подходит для гейминга и профессиональной работы.

Читать подробнее: https://habr.com/ru/articles/960418/

#ru

@dot_net_c_sharp | Другие наши каналы
Google пообещала, что до конца года все смогут вайб-кодить видеоигры с помощью ИИ

Google обещает, что до конца 2025 года любой сможет вайб-кодить видеоигры с ИИ — создавать их словами без единой строчки кода

Читать: «Google пообещала, что до конца года все смогут вайб-кодить видеоигры с помощью ИИ»

#ru

@dot_net_c_sharp | Другие наши каналы
💊43🤣2
MVC: управление панелью статистики в Unity

В статье автор показывает, как добавить кнопки открытия/закрытия панели статистики, связать View с Observer (UserAction), обработать события и прятать кнопку открытия. Показано разделение логики Statistics и Health без изменений модели. Зачем выносить логику UI: пример с Health и Statistics в Unity
Разбор выделяет StatisticsView и StatisticViewObserver, показывает передачу обновлений через события, отключение игрока через модель и устранение дублирования кода для упрощения связей и расширяемости UI. MVP: из Observer в Presenter — апгрейд Max HP

В статье показано, как заменить StatisticViewObserver на StatisticsViewPresenter, добавить MaxHealth в HealthModel и кнопку повышения HP в StatisticsView. Presenter обрабатывает ввод, обновляет модель и UI. Разбор вариантов MVP — в следующей статье.

Читать подробнее: https://habr.com/ru/articles/960848/

#ru

@dot_net_c_sharp | Другие наши каналы
CVE-2025-55315: request smuggling в ASP.NET Core

В статье объясняют уязвимость (CVSS 9.9): как скрытые HTTP‑запросы позволяют обходить проверки, получать доступ от имени других пользователей и похищать данные. Рекомендация — установить патчи и проверить код, работающий с HTTP‑потоками. Уязвимость CVE-2025-55315 в ASP.NET Core

Согласно статье, неверная обработка chunk extensions (одиночный \n вместо \r\n) в Kestrel даёт возможность request smuggling. Проблема уже исправлена — обновите ASP.NET Core/.NET до последних поддерживаемых версий. Важное: уязвимость в ASP.NET Core (CVE-2025-55315)

В статье описан request smuggling через chunk-extensions в HTTP/1.1, затрагивающий ASP.NET Core и старые версии .NET. Azure App Services уже закрыт, статус IIS неясен. Рекомендуется обновить .NET и проверить прокси/хостинг.

Подробности: https://andrewlock.net/understanding-the-worst-dotnet-vulnerability-request-smuggling-and-cve-2025-55315/

#en

@dot_net_c_sharp | Другие наши каналы
Типы языков программирования: от низкоуровневых до высокоуровневых — как выбрать для новичка

Выбираете первый язык программирования? Узнайте о низкоуровневых (C, C++), среднеуровневых (Java, C#) и высокоуровневых (Python, JavaScript) языках: плюсы, минусы и примеры применения. Чек-лист от экспертов поможет новичкам выбрать язык для веб, мобильной разработки или игр.

Читать: «Типы языков программирования: от низкоуровневых до высокоуровневых — как выбрать для новичка»

#ru

@dot_net_c_sharp | Другие наши каналы
Новые Copilot Custom Agents для .NET: C# Expert и WinForms Expert

GitHub представил экспериментальные агенты для .NET, которые анализируют код, предлагают лучшие практики, минимизируют лишние изменения и защищают .Designer.cs. Файлы доступны в @github/awesome-copilot — попробуйте и оставьте отзыв.

Подробности: https://devblogs.microsoft.com/dotnet/introducing-custom-agents-for-dotnet-developers-csharp-expert-winforms-expert/

#en

@dot_net_c_sharp | Другие наши каналы
Atomic v2: модульная архитектура для Unity

В статье описан фреймворк Atomic v2: сущности собираются из атомарных данных и поведений, ESB‑паттерн ускоряет прототипирование, тестирование в EditMode и переиспользование механик, приведены примеры кода и обсуждены риски подхода.

Читать подробнее: https://habr.com/ru/articles/959834/

#ru

@dot_net_c_sharp | Другие наши каналы
Новая MIT‑альтернатива MediatR — Requestum

В статье автор представляет Requestum как открытую бесплатную замену MediatR после новостей о коммерциализации: явные интерфейсы для команд/запросов/событий, отдельные Execute/Handle/Publish, синхронные обработчики и поддержка множества подписчиков. Новый быстрый .NET-медиатор: Requestum
В статье представлен Requestum — альтернатива MediatR с явной типизацией команд/запросов/событий, поддержкой sync/async middleware и простой интеграцией в DI. Бенчмарки показывают заметный выигрыш в скорости и экономию памяти. Requestum — быстрая и простая CQRS-альтернатива MediatR

Новая библиотека с реальной синхронностью, приростом производительности 20–50% и 30–60% меньшими аллокациями, понятным API и минимальной миграцией. Доступна на NuGet, код под MIT.

Читать подробнее: https://habr.com/ru/articles/961936/

#ru

@dot_net_c_sharp | Другие наши каналы
🔥4
Когда технологии предают: умный дом как вход для атак — В статье предупреждают: 98% IoT-трафика не шифруется, в квартире 10–15 уязвимых устройств. Камеры и холодильники могут майнить и сливать личные данные, становясь частью ботнета. Описаны векторы атак и базовые меры защиты. Защита умных устройств: простые шаги и реальные кейсы
В материале описаны уязвимости IoT, кейс взлома кофеварки как точка входа в сеть, правила фаервола, детектор на Raspberry Pi и практический чеклист: смена паролей, отдельная сеть для IoT и регулярные обновления прошивок.

Читать подробнее: https://habr.com/ru/articles/962210/

#ru

@dot_net_c_sharp | Другие наши каналы
Claw Engine 1.2.0 — открыт релиз

Bear Head Studio выпустила лёгкий генеративный движок для инди: хаб и кроссплатформенное ядро на MonoGame+LeoECS, модули террейна, погоды, LOD, импостинга и физики. В планах генеративные инструменты и технодемка.

Читать подробнее: https://habr.com/ru/articles/962580/

#ru

@dot_net_c_sharp | Другие наши каналы
👍2