en
Feedback

Don't get caught by a cheater! Telemetrio finds and tags such channels 👉 If you want to see the tag, subscribe

C# (C Sharp) programming

C# (C Sharp) programming

Open in Telegram

По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ

Show more

📈 Analytical overview of Telegram channel C# (C Sharp) programming

Channel C# (C Sharp) programming (@csharp_ci) in the Russian language segment is an active participant. Currently, the community unites 18 030 subscribers, ranking 7 242 in the Technologies & Applications category and 36 510 in the Russia region.

📊 Audience metrics and dynamics

Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 18 030 subscribers.

According to the latest data from 29 October, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -54 over the last 30 days and by -9 over the last 24 hours, overall reach remains high.

  • Verification status: Not verified
  • Engagement rate (ER): The average audience engagement rate is 15.19%. Within the first 24 hours after publication, content typically collects 8.07% reactions from the total number of subscribers.
  • Post reach: On average, each post receives 2 738 views. Within the first day, a publication typically gains 1 455 views.
  • Reactions and interaction: The audience actively supports content: the average number of reactions per post is 0.
  • Thematic interests: Content is focused on key topics such as .net, api, логика, архитектура, string.

📝 Description and content policy

The author describes the resource as a platform for expressing subjective opinions:
“По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ”

Thanks to the high frequency of updates (latest data received on 30 October, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.

18 030
Subscribers
-924 hours
-397 days
-5430 days
Posts Archive
😬 Почти каждый разработчик делал эту ошибку Код вроде бы нормальный: - API для регистрации вызывает UserService - UserServic
😬 Почти каждый разработчик делал эту ошибку Код вроде бы нормальный: - API для регистрации вызывает UserService - UserService сохраняет пользователя и вызывает EmailService - EmailService отправляет письмо через SmtpClient Но если присмотреться — SendWelcomeEmail помечен как **async void** ❗️ Почему это проблема? ❌ async void делает невозможным отлов исключений. Если внутри SendEmailAsync() что-то пойдёт не так — try/catch не сработает. Исключение пролетит мимо и может тихо крашнуть приложение или вызвать странные баги. Почему так? 🔸 async void не возвращает Task, значит await невозможен 🔸 Исключения из таких методов не перехватываются обычным образом ✅ Как правильно: Всегда возвращай Task — только так можно надёжно обрабатывать ошибки. 📌 Запомни правило: async void допустим только в event‑handler’ах. Больше — нигде. Ты уже сталкивался с этой ловушкой? Пиши свои фейлы или советы 👇

🛠 Игра начинается: лутайте призы на сервере Selectel в Minecraft Пока вы работаете, пиглины добывают золото в недрах Незера.
🛠 Игра начинается: лутайте призы на сервере Selectel в Minecraft   Пока вы работаете, пиглины добывают золото в недрах Незера. Пора и вам немного развеяться: присоединяйтесь к игре на сервере Selectel. Стройте, исследуйте, конкурируйте — или просто создайте ферму из кактусов, никто не осудит.   На сервере три режима игры под разное настроение:   ▪️ Ванильное выживание на нормальной сложности — бессмертная классика с мини-квестами и внутриигровыми наградами каждый день. ▪️ Креатив с пиксельными дата-центрами Selectel, гигантскими фигурками героев аниме и другими постройками. ▪️ Арена — особый режим, на котором раз в неделю будут запускать разные PVP- и PVE-события с призами.   На сервере нет и не будет донатов. Чтобы начать, достаточно установить на ПК копию Minecraft Java Edition 1.21.5 или новее, а затем зарегистрироваться ➡️ Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzqx834rk

🧪 ABP Framework — мощный инструмент для .NET-разработчиков, который превращает стандартный ASP.NET Core в платформу для корп
🧪 ABP Framework — мощный инструмент для .NET-разработчиков, который превращает стандартный ASP.NET Core в платформу для корпоративных решений. Это не просто фреймворк, а целая экосистема с готовыми модулями, шаблонами проектов и инструментами автоматизации. Проект имеет поддержку DDD, мультитенантности и микросервисов из коробки. ABP берет на себя рутинные задачи вроде авторизации, валидации и логирования, позволяя сосредоточиться на бизнес-логике. 🤖 GitHub @csharp_ci

🚀 Хочешь масштабировать своё API по горизонтали? Без балансировщика нагрузки не обойтись. Вот как быстро собрать свой на .NE
🚀 Хочешь масштабировать своё API по горизонтали? Без балансировщика нагрузки не обойтись. Вот как быстро собрать свой на .NET с помощью YARP (Yet Another Reverse Proxy): 3 простых шага: 1. Установи библиотеку YARP (`Microsoft.ReverseProxy`) 2. Настрой YARP в Program.cs и appsettings.json 3. Укажи пути к downstream-сервисам После этого твой прокси уже готов к работе — будет распределять трафик между сервисами. Но это только начало. YARP мощный и расширяемый. Он поддерживает разные политики балансировки нагрузки прямо "из коробки": ▪ Random — случайный выбор ▪ RoundRobin — по кругу ▪ LeastRequests — к тому, у кого меньше всего запросов ▪ FirstAlphabetical — по алфавиту ▪ PowerOfTwoChoices — выбери лучший из двух случайных (дефолт) Автор статьи применил YARP для масштабирования нескольких приложений и делится опытом в полном гайде: 📖 Читай подробнее: https://milanjovanovic.tech/blog/horizontally-scaling-aspnetcore-apis-with-yarp-load-balancing

😱💻 Хотите прокачать архитектурные скилы и стать востребованным fullstack-разработчиком? Пройдите вступительный тест и получ
😱💻 Хотите прокачать архитектурные скилы и стать востребованным fullstack-разработчиком? Пройдите вступительный тест и получите бесплатные уроки курса «C# ASP.NET Core разработчик» от OTUS! 👉 Пройти тест: https://otus.pw/I9v5/ 🚀 Зарядите карьеру: увеличьте доход, берите сложные проекты и работайте с современным стеком! Всего за 6 месяцев вы научитесь: • Разрабатывать веб-приложения на ASP.NET Core, рассматривая ASP.NET подробно, со всеми его механизмами • Создавать различные технологии межсервисного взаимодействия + реалтайм с клиентским приложением •Интегрировать фронтенд (ReactJS + JavaScript+Typescript) с бэкендом • Тестировать приложения: интеграционные и нагрузочные тесты • Автоматизировать процессы с CI/CD и Kubernetes • Проектировать микросервисы и освоить event-driven архитектуру 🎁 Бонус: После теста — доступ к урокам! 👉 Проверьте свои силы прямо сейчас: https://otus.pw/I9v5/ Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ", ИНН: 9705100963

🎯 Design pattern, который должен знать каждый — Decorator Один из самых гибких и мощных паттернов — особенно в мире .NET и D
🎯 Design pattern, который должен знать каждый — Decorator Один из самых гибких и мощных паттернов — особенно в мире .NET и DI. ▪ Что это такое? Decorator позволяет обернуть реализацию сервиса в дополнительное поведение — например, логгирование, кэширование или retry-механику — без изменения исходного кода. ▪ Как применить на практике? В .NET это особенно удобно с библиотекой Scrutor — она расширяет встроенный DI-контейнер и позволяет добавлять декораторы в одну строчку. Пример:

services.Decorate<IService, LoggingDecorator>();
Зачем это нужно? — логгировать вызовы без лома архитектуры — централизованно обрабатывать ошибки — добавить метрики без влезания в бизнес-логику 📌 Подробнее

Что выведет на экран этот код?
Anonymous voting

#ПятничныйКвиз #ЗанимательнаяМатематика
#ПятничныйКвиз #ЗанимательнаяМатематика

💎 CSharpier — бескомпромиссный форматтер для C#. Этот инструмент берёт ваш код и переписывает его по своим строгим правилам,
💎 CSharpier — бескомпромиссный форматтер для C#. Этот инструмент берёт ваш код и переписывает его по своим строгим правилам, вдохновлённым Prettier. Никаких бесконечных настроек, только единый стандарт оформления для всего проекта. Инструмент интегрируется с редакторами, работает через CLI и даже в CI/CD. Будет особенно удобен для команд, где важна единообразная кодовая база без ручной правки стиля. 🤖 GitHub @csharp_ci

✂️ Clipper2 — библиотека для работы с полигонами. Этот проект представляет собой современную версию классической библиотеки C
✂️ Clipper2 — библиотека для работы с полигонами. Этот проект представляет собой современную версию классической библиотеки Clipper, переписанную с нуля для поддержки новых стандартов. Инструмент выполненяет булевые операций (объединение, пересечение, вычитание) над сложными полигональными фигурами, а также их офсетное преобразование. Библиотека имеет кроссплатформенную поддержку: помимо нативных C++, C#, Delphi-реализаций, доступны адаптации для Java, Kotlin и даже WebAssembly. При этом версия на С# демонстрирует наибольшую производительность, она идеально подходит для задач CAD-систем и GIS-приложений. 🤖 GitHub @csharp_ci

🎯 Хитрая задача на C# для продвинутых Твоя цель — реализовать ленивую фильтрацию по уникальному ключу без LINQ. Условие: Есть класс:

class User
{
    public string Name { get; set; }
    public int Age { get; set; }
}
Нужно написать метод UniqueBy<T, TKey>, который возвращает только уникальные элементы по ключу. Нельзя использовать LINQ (Distinct, GroupBy и т.д.). Метод должен быть ленивым — использовать yield return. Пример:

var users = new List<User>
{
    new User { Name = "Alice", Age = 30 },
    new User { Name = "Bob", Age = 25 },
    new User { Name = "Alice", Age = 35 },
    new User { Name = "Eve", Age = 25 }
};

foreach (var user in UniqueBy(users, u => u.Name))
{
    Console.WriteLine($"{user.Name}, {user.Age}");
}
// Вывод:
// Alice, 30
// Bob, 25
// Eve, 25
🧠 Решение:

public static IEnumerable<T> UniqueBy<T, TKey>(IEnumerable<T> source, Func<T, TKey> keySelector)
{
    var seen = new HashSet<TKey>();
    foreach (var item in source)
    {
        var key = keySelector(item);
        if (seen.Add(key))
            yield return item;
    }
}
📌 Чем эта задача интересна: ▪ Требует знания HashSet, yield return и замыканий ▪ Работает с любыми коллекциями и даже бесконечными потоками ▪ Часто нужна при фильтрации API-результатов, логов и UI Ставь лайк, если хочешь больше таких продвинутых C#-задач.

Устали править копипастные участки кода и бороться с хаосом в проекте? ⏺️ Приглашаем на открытый урок «Переиспользуемый код н
Устали править копипастные участки кода и бороться с хаосом в проекте?  ⏺️ Приглашаем на открытый урок «Переиспользуемый код на C#: архитектурный подход» 15 июля в 20:00 МСК. Разберём, как строить приложение по принципам SOLID, DRY, KISS и YAGNI и избавляться от дублирования на уровне архитектуры. Вы увидите, как декомпозировать систему на слои, внедрять зависимости через абстракции и собирать «Lego-приложение» для разных интерфейсов. 🔴 Встречаемся 15 июля в 20:00 МСК. ➡️ Успейте зарегистрироваться на урок количество участников ограничено: https://otus.pw/55rM/?erid=2W5zFJJBcuE  Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

⚠️ Как вы обрабатываете ошибки в C#? Многие используют исключения для управления потоком и быстрого фейла. Но в C# метод не с
⚠️ Как вы обрабатываете ошибки в C#? Многие используют исключения для управления потоком и быстрого фейла. Но в C# метод не сообщает, какие именно исключения он может выбросить — это не видно в сигнатуре. 🔍 Мой подход: Исключения — только для исключительных ситуаций. Если метод может ожидаемо провалиться, пусть это будет явно. ✅ Используйте Result-паттерн: — Метод возвращает Result<T> вместо выбрасывания исключения — Caller обязан проверить IsSuccess и обработать ошибку — Код становится предсказуемее и легче тестируется — Дополнительно: пропускная способность может быть выше, чем при throw/catch Пример:

Result<User> result = userService.FindById(id);
if (!result.IsSuccess)
    return Error(result.Error);
Подробнее

ХОЧЕШЬ ПОВЫСИТЬ ГРЕЙД В 2025 ГОДУ? 🚀 Чтобы стать Senior C# разработчиком сегодня, нужно не только знать язык программировани
ХОЧЕШЬ ПОВЫСИТЬ ГРЕЙД В 2025 ГОДУ? 🚀 Чтобы стать Senior C# разработчиком сегодня, нужно не только знать язык программирования и фреймворки. Нужно уметь строить гибкую архитектуру приложения, которую легко тестировать и менять под задачи бизнеса. Стань экспертом в построении гибкой архитектуры приложения! 👉 Стартуем 14 июля. Курс ведет действующий архитектор и Principal Engineer Кирилл Ветчинкин. Что будет на курсе: ✅ Создадим полноценный микросервис ✅ Разберем все тактические паттерны DDD ✅ Реализуем Use Case и Domain Service ✅ Напишем много тестов ✅ Реализуем HTTP, gRPC и Kafka адаптеры Полная программа ТУТ 👉 https://microarch.ru/courses/ddd?utm_source=posev&utm_medium=erid:2Vtzqwm7tdD&utm_campaign=4 А главное — ты с нуля разработаешь и запустишь микросервис, который максимально приближен к реальности "Диспетчеризация заказов на курьеров". Это будет крутым проектом в портфолио или основой для рабочих задач. А еще: — Проверим все домашки — Поддержим в чате — Проведем живые разборы — Ответим на все вопросы 🔥 Не откладывай свой рост на потом: https://microarch.ru/courses/ddd?utm_source=posev&utm_medium=erid:2Vtzqwm7tdD&utm_campaign=4 Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099 Erid: 2Vtzqwm7tdD

📂 Microsoft открыла исходный код DocumentDB — нового стандарта NoSQL-баз на основе PostgreSQL Теперь ядро Cosmos DB (MongoDB
📂 Microsoft открыла исходный код DocumentDB — нового стандарта NoSQL-баз на основе PostgreSQL Теперь ядро Cosmos DB (MongoDB API) доступно всем — Microsoft представила DocumentDB, документоориентированную базу данных с открытым исходным кодом. Это серьёзный шаг для open source-сообщества и большой вклад в развитие NoSQL на базе PostgreSQL. 🔧 Что входит в DocumentDB: ▪️ pg_documentdb_core — расширение PostgreSQL с поддержкой BSON, включает: - индексацию по полям, включая гео и составные - векторный поиск (AI, NLP, рекомендации) - аутентификацию SCRAM ▪️ pg_documentdb_api — API-уровень для CRUD-операций, запросов и управления индексами 🐳 Как попробовать: 1. Установите Docker 2. Клонируйте проект:

git clone https://github.com/microsoft/documentdb.git
Соберите и запустите:

docker build . -f .devcontainer/Dockerfile -t documentdb  
docker run -v $(pwd):/home/documentdb/code -it documentdb /bin/bash
cd code && make && sudo make install
./scripts/start_oss_server.sh -t documentdb
Подключение:

psql -p 9712 -h localhost -d postgres
🔗 Репозиторий: https://github.com/microsoft/documentdb DocumentDB — это не просто адаптация под Mongo, а новая точка входа в NoSQL на мощной базе PostgreSQL.

🧰 Modern — набор инструментов для .NET, упрощающий разработку бэкенда Modern — это лёгкий и расширяемый фреймворк, с которым
🧰 Modern — набор инструментов для .NET, упрощающий разработку бэкенда Modern — это лёгкий и расширяемый фреймворк, с которым можно собрать production-ready приложение всего из моделей и конфигурации. Поддерживает как SQL, так и NoSQL, подходит под разные архитектурные стили. 🔹 Что внутри: • Универсальные репозитории для SQL и NoSQL • Сервисы с кэшированием и без • In-memory-сервисы с фильтрацией • Кэши на Redis и в памяти • CQRS-запросы и команды поверх репозиториев • Готовые контроллеры для всех видов сервисов • Поддержка OData-контроллеров 📦 Все компоненты гибко настраиваются и легко заменяются. Отличный выбор для тех, кто хочет писать меньше шаблонного кода и быстрее выходить в прод. Github

https://t.me/csharp_ci 10.07. 👩‍💻 🎯 Открытый урок «Асинхронность в C#: за гранью await. Паттерны, ошибки и оптимизация для
https://t.me/csharp_ci 10.07. 👩‍💻 🎯 Открытый урок «Асинхронность в C#: за гранью await. Паттерны, ошибки и оптимизация для профессионалов». 🗓 17 июля в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «C# Developer. Professional». Что будет на вебинаре: ✔️ Разбор сложных сценариев: цепочки задач, параллельный async, комбинирование с параллелизмом (Task, Parallel, async). ✔️ Распространенные ошибки (deadlocks, async void, контексты синхронизации) и как их точно избегать. ✔️ Паттерны: CancellationTokens, ValueTask, IAsyncDisposable, кастомные awaiterы (обзорно). ✔️ Когда и как измерять производительность async кода, что может стать узким местом. ✔️ Best practices для реальных высоконагруженных сценариев. Кому будет полезно: - Разработчикам C# с опытом (Mid+/Senior), которые активно используют async/await. - Тем, кто сталкивался с непонятными блокировками или проблемами производительности в асинхронном коде. - Тем, кто хочет писать более надежный и эффективный асинхронный код. 🔗 Ссылка на регистрацию: https://otus.pw/TysE/

🎮 Свежий Генератор игр для Unity теперь работает по принципу вайб-кодинга — всё делается через промпты прямо в движке. 🛠 Что умеет: • Генерирует готовые ассеты, скрипты, 3D-модели и локации • Работает внутри Unity — появляется чат-окно, где ты просто пишешь, что хочешь • Unity бесплатен — качай и начинай без вложений • Полно **гайдов на YouTube**, всё понятно за полчаса • Главное— он реально работает, никаких подписок, всё локально https://nimblefox.ai/

🔌 WireMock.Net — мок-сервер для .NET-разработчиков. Этот порт популярного Java-инструмента WireMock позволяет тестировать HT
🔌 WireMock.Net — мок-сервер для .NET-разработчиков. Этот порт популярного Java-инструмента WireMock позволяет тестировать HTTP-зависимости без реальных внешних сервисов. Проект поддерживает сложные сценарии: от стабов с шаблонами Handlebars до stateful-поведения и записи/воспроизведения запросов. Мок-сервер можно запускать в разных режимах, как в памяти для юнит-тестов, так и в виде standalone-процесса, Windows-сервиса или Docker-контейнера. Для CI/CD есть интеграция с Testcontainers и .NET Aspire. 🤖 GitHub @csharp_ci

🍫 Hot Chocolate + GraphQL + .NET: Быстрый старт Если ты хочешь использовать GraphQL в .NET‑проектах — обрати внимание на Hot
+4
🍫 Hot Chocolate + GraphQL + .NET: Быстрый старт Если ты хочешь использовать GraphQL в .NET‑проектах — обрати внимание на Hot Chocolate от ChilliCream. Это мощный, удобный и активно развиваемый GraphQL-сервер для .NET. 📎 Полный гайд: [antondevtips.com/blog/getting-started-with-hot-chocolate-graphql](https://antondevtips.com/blog/getting-started-with-hot-chocolate-graphql) ⚙️ Шаг 1: Установка Создай новый ASP.NET Core проект:

dotnet new web -n Demo
cd Demo
dotnet add package HotChocolate.AspNetCore
🧱 Шаг 2: Настройка GraphQL В файле Program.cs добавь следующее:

var builder = WebApplication.CreateBuilder(args);

builder.Services
    .AddGraphQLServer()
    .AddQueryType<Query>();

var app = builder.Build();

app.MapGraphQL();
app.Run();
Создай класс Query.cs:


public class Query
{
    public Book GetBook() => new Book
    {
        Title = "C# in Depth",
        Author = new Author { Name = "Jon Skeet" }
    };
}
И добавь модели:

public class Book
{
    public string Title { get; set; }
    public Author Author { get; set; }
}

public class Author
{
    public string Name { get; set; }
}
📬 Шаг 3: Запрос в браузере Открой http://localhost:5000/graphql и выполни GraphQL-запрос:


{
  book {
    title
    author {
      name
    }
  }
}
🧠 Почему стоит выбирать Hot Chocolate? - Поддержка annotation-based, code-first и schema-first подходов - Отличная интеграция с EF Core - Встроенная фильтрация, сортировка, пагинация, DataLoader - Поддержка подписок (Subscriptions) - Интерактивная IDE: Banana Cake Pop 📌 Полезные советы Для продакшена отключи Banana Cake Pop, GET-запросы и интроспекцию Используй .AddMutationType, .AddSubscriptionType, .AddFiltering, .AddSorting для расширения схемы 🚀 Полный гайд Hot Chocolate — это простой способ внедрить GraphQL в .NET. Он удобен в настройке, гибкий в использовании и подходит для проектов любого масштаба.