#aspnet_core

2025-05-27

Scalar вместо Swagger UI. Надо ли оно нам?

С выходом .NET 9 пакет Swashbuckle.AspNetCore выпилили из шаблона Web API. Это означает, что при создании нового приложения ASP.NET Core Web API у нас больше нет привычного зеленого пользовательского интерфейса Swagger для тестирования endpoint-ов. В статье — краткий разбор, почему это произошло, и обзор альтернативы Scalar. Хочу разобраться

habr.com/ru/articles/892508/

#c# #net #net_9 #net_core #aspnet_core #aspnet_webapi #webapi_testing #swagger #scalar #openapi

2025-04-26

Scalar на замену Swashbuckle в .NET 9 и как это готовить с Design API First

Рассказываю чем заменить Swashbuckle, который убрали из .Net 9, для создания страницы похожей на Swagger UI.

habr.com/ru/articles/904738/

#web_api #aspnet_core #swagger #open_api #net_9 #dotnet_core #dotnet #typespec #webapi #openapi

2025-03-31

Событийный диспетчер отложенных задач на C#: консолидация и дедупликация данных в текущей инстанции

Всем привет, меня зовут Артур Богданов. Я занимаюсь проектированием, разработкой и оптимизацией высоконагруженных веб-приложений на ASP.NET Core. Хочу поделиться с сообществом своей разработкой, которая позволяет использовать несколько фоновых задач (или «раннеров») для отложенной обработки консолидированных данных. Раннеры построены на шаблоне PubSub для асинхронного ожидания новых задач, что делает этот подход более реактивным, но менее ресурсоемким.

habr.com/ru/articles/896088/

#C# #net #aspnet_core #очередь #асинхронность #многопоточность #таск #таскменеджер #фоновые_задачи

2025-02-22

Отключение http-метрик в ASP.NET Core

Выход ASP.NET Core 9 порадовал возможностью выборочно отключать http-метрики. В статье сценарии использования с примерами и детальный разбор того, как всё устроено под капотом. Хочу разобраться

habr.com/ru/articles/880738/

#c# #net #net_9 #aspnet #aspnet_core #aspnet_webapi #webapi #метрики #metrics #prometheus

2025-02-04

Используем API Key и JWT Bearer аутентификацию вместе в ASP.NET Core Web API

Я расскажу, как реализовать аутентификацию с использованием как JWT, так и API-ключа на одном и том же endpoint в ASP.NET Core Web API. Совмещение этих схем аутентификации полезно, если вы хотите использовать токен JWT Bearer для аутентификации пользователей и API-ключ для аутентификации между сервисами.

habr.com/ru/articles/879424/

#net #net_core #net_8 #net_9 #aspnet_core #authentication #authorization #jwt #api_key

2025-01-13

Гибридное кэширование в ASP.NET Core

В .NET 9 появилась новая библиотека для кэширования — HybridCache . В статье расскажу, что это такое, какие задачи решает, разберу примеры использования и особенности внутреннего устройства. Хочу разобраться

habr.com/ru/articles/871716/

#c# #net #net_9_preview #net_9 #aspnet #aspnet_core #программирование #кэширование #кэширование_данных #гибридное_кэширование

2024-11-07

Лучшие backend-фреймворки для веб-разработки в 2024 году

Фреймворки упрощают разработку, ликвидируют хаос и задают понятные рамки при создании приложения. При этом каждый фреймворк имеет определенный набор готовых инструментов — проверенных опытом технических решений, ускоряющих и облегчающих разработку. В этой статье мы рассмотрим 10 самых популярных фреймворков для backend-а в 2024 году, без которых сегодня не обходится практически ни одно приложение.

habr.com/ru/companies/timeweb/

#timeweb_статьи #rest_api #aspnet_core #microsoft #linux #windows #django #python #laravel #mvc

2024-10-16

Реализуем паттерн Unit of Work в ASP.NET Core

Привет, Хабр! Сегодня разберём, как реализовать паттерн Unit of Work в ASP.NET Core . Вместо долгих теоретических рассуждений, посмотрим, зачем он вообще нужен, и как правильно его применить на практике.

habr.com/ru/companies/otus/art

#c# #aspnet_core

2024-10-01

Пишем приложение на C#-стеке

Всем привет! Меня зовут Дмитрий Бахтенков , и я .NET-разработчик. Сегодня мы проведем эксперимент — напишем полноценное веб-приложение с использованием решений, которые написаны на C# и платформе .NET. Больше моих статей можно прочитать в медиа вАЙТИ . Что я имею в виду? Как мы знаем, в общем случае веб-приложение состоит из бэкенда, фронтенда, базы данных и иногда из кеша. С бэкендом и фронтендом всё понятно: у нас есть замечательный фреймворк ASP.NET Core для сервера и blazor или razor pages для клиента. Однако инфраструктурные части приложения — БД, кеши — чаще всего пишутся на других, более низкоуровневых языках, таких как C и C++. К счастью, недавно Microsoft выпустила решение для кеширования — аналог Redis, который называется Garnet . В качестве основной базы данных можно использовать документную БД RavenDB , которая как раз написана на C#.

habr.com/ru/companies/beeline_

#aspnet_core #blazor #ravendb #garnet #кеширование #вебразработка

2024-07-26

Пожалуй, самый простой способ спасти ваше .NET-приложение, или Prometheus (и не только) спешит на помощь

Существует множество возможных проблем приложений, которые удается заметить лишь с опозданием. Особенно когда релиз уже состоялся… К счастью, существует пара ключевых инструментов, которые выручают почти в любой ситуации, — и вряд ли найдется что-то проще. Меня зовут Александр Пугач, я — Senior .NET Developer в проекте Data Warehouse «Лаборатории Касперского» (да-да, вы могли не знать, но у нас в компании широко используются .NET и «шарпы» ). В этой статье я расскажу, как работать с метриками в .NET на примере OpenTelemetry и Prometheus — систем, которые помогают отслеживать проблемы в работе приложений и быстро на них реагировать, обеспечивая стабильную и отказоустойчивую работу сервисов. Когда-то метрики изменили мой процесс разработки, и теперь я надеюсь, что эта статья поможет вам перевернуть ваш взгляд на свои проекты.

habr.com/ru/companies/kaspersk

#net #c# #net_core #программирование #aspnet_core #visual_studio #aspnet #c#net #разработка #OpenTelemetry #Prometheus #opentelemetrydotnet #opentelemetrydotnetcontrib #Colleсtor_AppMetrics #prometheusnet #HealthChecks #Alerting #Grafana #Мониторинг #Obsevability #Docker

2024-05-17

[Перевод] Разбираемся с паттерном REPR в ASP.NET Core

В этой статье мы рассмотрим паттерн проектирования REPR (request‑endpoint‑response — «запрос‑конечная_точка‑ответ»), как он упрощает разработку API и как его можно реализовать на C#.

habr.com/ru/companies/otus/art

#c# #паттерн_REPR #ASPNET_Core #REPR

2024-02-25

Тонкости работы short-circuit routing в ASP.NET Core 8.0

В статье детально и с примерами рассказываю про short-circuit routing — новую фичу Minimal API в ASP.NET Core 8.0. Она позволяет игнорировать добавленные middleware при вызове отдельных endpoint-ов. Рассмотрим, как это работает, сравним методы и немного поговорим про то, как добавляются middleware в приложение на ASP.NET Core. Не читайте эту статью, если вам нужно просто прикрутить short-circuit routing и не париться, как оно работает, — для этого достаточно документации и обзора от Andrew Lock . У меня же после них осталось больше вопросов, чем ответов, потому я залез по самые локти в код и разобрался. Если вам тоже интересно — добро пожаловать под кат. Хочу разобраться

habr.com/ru/articles/791336/

#net #net_8 #c# #c#_12 #aspnet_core #aspnet_core_80 #webapi #web_api #minimal_api #web_application

2024-02-07

Наш опыт мультиаутентификации в приложениях ASP.NET Core

Привет, Хабр! На связи разработчик АО АльфаСтрахование. В этой статье я хочу рассказать о мультиаутентификации в ASP.NET Core приложениях. Нам довольно часто нужно писать .NET Core приложения. Нередко они используются для интеграции крупных систем. А в этих системах частенько свой собственный набор учетных записей (далее УЗ) и инструментов по управлению доступа к ним. При создании интеграции у нас часто возникает проблема, когда в рамках одного запроса нужно нужно аутентифицировать 2 и более учетных записей

habr.com/ru/companies/alfastra

#c# #net #net_core #aspnet_core #authentication #аутентификация #middleware #альфастрахование

2024-01-19

Обработка ошибок с помощью IExceptionHandler в ASP.NET Core 8.0

Давайте рассмотрим, как вы можете реализовать обработку ошибок, используя IExceptionHandler в .NET Core 8.0. Этот подход следует похожим паттернам предыдущих методов обработки ошибок в ASP.NET Core, но добавляет дополнительную возможность внедрения вашей собственной логики обработки исключений в exception handling middleware .

habr.com/ru/articles/787674/

#exception #exceptionhandler #net_core #aspnet_core #net_core_80 #logging #error #c# #c#net #webapi

2023-12-15

Разворачиваем и заворачиваем в docker проект ASP.NET core на Ubuntu в связке с PostgreSQL

На просторах интернета заметил, что довольно мало статьей про ASP.NET под Linux . К сожалению, новички вроде меня копаются часами в поисках нужной информации, поэтому в этой статье мы вместе развернём минимальное приложение ASP.NET core под Linux в среде Ubuntu и в связке с PostgreSQL и с котиками на сервере nginx, а также упакуем всё в docker контейнеры. В ходе этой статьи мы разберём некоторые консольные команды для ежедневного пользования. Приступить к чтению

habr.com/ru/articles/780952/

#docker #dockercompose #dockerfile #c# #aspnet_core #aspnet #asp #web_api #restful #postgresql

2018-08-21

WebAssembly でシングルページアプリケーションが開発できる Blazor フレームワークの公式チュートリアルをやったら近未来感が凄かった by Nossa qiita.com/Nossa/items/f0e2fc1c #Qiita #Csharp #SPA #WebAssembly #ASPNET_Core #Blazor
WebAssemblyで動くフレームワークが出てきたのか。アツいな

2017-12-21

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst