Найти в Дзене
Покупайте СтеллыИ дарите их за контент
2 недели назад
 • Вы подписаны

System.Text.Json.JsonSerializer: generic dictionary - как убрать ссылки на типы в выходном JSON

На днях я столкнулся с сериализацией через System.Text.Json.JsonSerializer класса с вложенным generic-словарем - и это было больно. Еще больнее стало после того, как я прочел документацию. Суть проблемы: вместо того, чтобы генерировать требуемый JSON, JsonSerializer, вместе с ожидаемыми данными, охапками закидывает в выходную строку имена типов, как минимум, для каждого поля каждой записи в словаре. Получается каша. Интерфейс ISerializable не поддерживается. Опции "убрать эти имена типов нафиг" нет. По крайней мере, нет в .NET Core 8. В общем, есть вот такая документация: Как написать настраиваемые преобразователи для сериализации JSON (маршалинг) в ...

3 недели назад
 • Вы подписаны

Azure DevOps, PowerShell, и борьба с загрузкой своих сборок .NET Core 8

Вроде простая вещь - загрузить свою сборку в скрипте PowerShell и использовать классы оттуда. Ан нет! И здесь нашел себе проблем. Итак: во-первых, как теперь выглядит у меня код загрузки сборок: try { Add-Type -Path "$scriptToolsPath" Add-Type -Path "$protectBuildToolsPath" } catch [System.Reflection.ReflectionTypeLoadException] { Write-Host "Message: $($_.Exception.Message)" Write-Host "StackTrace: $($_.Exception.StackTrace)" Write-Host "LoaderExceptions: $($_.Exception.LoaderExceptions)" } Теперь хотя бы понятно, что там сбоит. А без catch и печати деталей выбрасывает ошибку типа "Тут была ошибка, смотреть в LoaderExceptions"...

3 месяца назад
 • Вы подписаны

MSBuild: Failed to retrieve information about 'Microsoft.NETCore.App.Host.linux-x64' from remote source

Странная ошибка мне попалась. Делал сборку проекта на .NET Core на Ubuntu, поставил ключ -r linux-x64. Получил вот такую фигню (см. заголовок). В общем, тут какая-то проблема с RID (см. https://learn.microsoft.com/ru-ru/dotnet/core/rid-catalog). Усугубленная проблемой с доступом к NuGet. Решается просто: идем на машину сборки, запускаем dotnet --info Видим там RID (у меня он такой: ubuntu...

6 месяцев назад
 • Вы подписаны

permission denied while trying to connect to the docker api at unix ///var/run/docker.sock

Такую ошибку получил при попытке подключения отладчиком Visual Studio 2022 к удаленному контейнеру Docker (Ubuntu). В общем, решение оказалось простое:

7 месяцев назад
 • Вы подписаны

Cannot enable nested VT-x/AMD-V without nested-paging and unresricted guest execution! (VERR_CPUM_INVALID_HWVIRT_CONFIG).

В общем, очень странная ситуация. Поставил очередное обновление Windows (16 февраля 2026). После чего последовательно отвалились: Visual Studio 2015 (не может подключиться к TFS), а затем и все виртуальные машины на Oracle VirtualBox. Насчет Visual Studio - это, может быть, совпадение. А вот с виртуалками вообще не понятно. Сначала была ошибка WHvCapabilityCodeHypervisorPresent is FALSE! Make sure you have enabled the 'Windows Hypervisor Platform' feature. (VERR_NEM_NOT_AVAILABLE). VT-x is not available (VERR_VMX_NO_VMX). Я посмотрел - ну, каким-то образом включился Hyper-V. Отключил. Получил ошибку VERR_CPUM_INVALID_HWVIRT_CONFIG (см...

8 месяцев назад
 • Вы подписаны

OpenID Connect, .NET Core: подключение к Keycloak 26 - настройка в Keycloak

В предшествующей статье я рассказал про реализацию подключения к Keycloak на стороне тестового консольного приложения на .NET Core 8 (одного из вариантов такого подключения). Теперь вернусь к вопросу о настройке Keycloak. Настройку зон (realms), пользователей, ролей - это почти полностью пропускаю, там все очень просто. Единственно отмечу, что обязательно надо или убрать флаг "обязательное поле" у незаполненных полей пользователей, или заполнить эти поля. Иначе подключение под этим аккаунтом не пройдет, клиент получит ошибку на этапе аутентификации - "Account is not fully set up"...

Покупайте СтеллыИ дарите их за контент