Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Работа с сервисом Managed Databases от Digital Ocean в .NET Core

PostgreSQL.NETОблачные сервисы


В том время, как у других облачных платформ уже давно есть свои решения для баз данных, Digital Ocean в этом сегменте до сегодняшнего дня ничего не предлагал. Но 14 февраля, в день всех влюбленных, компания решила сделать подарок своим клиентам и в режиме Limited Availability запустила сервис Managed Databases.

Поскольку Digital Ocean сейчас является довольно популярной платформой для хостинга небольшой проектов на .NET Core, я не мог обойти вниманием это событие.

Как работает сервис и какие есть нюансы при подключении к базе при использовании .NET Core в я расскажу в этой публикации.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры4.1K
Комментарии 3

Как работает конфигурация в .NET Core

.NETASPC#
Из песочницы

Давайте отложим разговоры о DDD и рефлексии на время. Предлагаю поговорить о простом, об организации настроек приложения.


После того как мы с коллегами решили перейти на .NET Core, возник вопрос, как организовать файлы конфигурации, как выполнять трансформации и пр. в новой среде. Во многих примерах встречается следующий код, и многие его успешно используют.


public IConfiguration Configuration { get; set; }
public IHostingEnvironment Environment { get; set; }

public Startup(IConfiguration configuration, IHostingEnvironment environment)
{
   Environment = environment;
   Configuration = new ConfigurationBuilder()
            .AddJsonFile("appsettings.json")
            .AddJsonFile($"appsettings.{Environment.EnvironmentName}.json")
            .Build();
}

Но давайте разберемся, как работает конфигурация, и в каких случаях использовать данный подход, а в каких довериться разработчикам .NET Core. Прошу под кат.

Читать дальше →
Всего голосов 33: ↑33 и ↓0 +33
Просмотры50.8K
Комментарии 24

Портирование WPF приложений на netcore 3.0

Directum.NET

Ожидаемый релиз netcore 3.0 позволяет запускать wpf на netcore. Процедура перевода для одного несложного проекта занимает один-два дня. Каждый последующий — много быстрее.





Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры9.1K
Комментарии 18

.NET Core: интринсики x86_64 на виртуальных машинах

.NETВиртуализацияC#
Мы живём в эпоху доминирования архитектуры x86. Все x86-совместимые процессоры похожи, но и все при этом немного отличаются. И не только производителем, частотой и количеством ядер.

Архитектура x86 за время своего существования (и популярности) пережила много крупных апдейтов (например, расширение до 64 бит — x86_64) и добавлений «расширенных наборов инструкций». К этому приходится подстраиваться и компиляторам, которые по-умолчанию генерируют максимально общий для всех процессоров код. Но среди расширенных инструкций есть много интересного и полезного. Например, в шахматных программах часто используются инструкции для работы с битами: POPCNT, BSF/BSR (или более свежие аналоги TZCNT/LZCNT), PDEP, BSWAP и т.д.

В компиляторах C и C++ явный доступ к таким инструкциям реализован через «присущие (intrinsic) данному процессору функции». пример1 пример2

Для .NET и C# такого удобного доступа не существовало, поэтому когда-то давно я сделал свою обёртку, которая предоставляла эмуляцию таких функций, но если CPU их поддерживал, то заменяла их вызов прямо в вызывающем коде. Благо, большинство нужных мне интринсиков помещались в 5 байт опкода CALL. Подробности можно почитать на хабре по этой ссылке.

С тех пор прошло много лет, в .NET нормальных интринсиков так и не появилось. Но вышел .NET Core, в котором ситуацию исправили. Сначала появились векторные инструкции, в потом и почти весь* набор System.Runtime.Intrinsics.X86.
* — нет «устаревших» BSF и BSR

И всё вроде-бы стало хорошо и удобно. Если не считать того, что определение поддержки каждого набора инструкций всегда было запутанным (какие-то включаются сразу наборами, для каких-то есть отдельные флаги). Так .NET Core запутало нас ещё сильнее с тем, что между «разрешёнными» наборами есть ещё и какие-то зависимости.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Просмотры4.4K
Комментарии 1

Интеграция с “Госуслугами”. Применение Workflow Core (часть II)

.NETC#
В прошлый раз мы рассмотрели место СМЭВ в задаче интеграции с порталом «Госуслуг». Предоставляя унифицированный протокол общения между участниками, СМЭВ существенно облегчает взаимодействие между множеством различных ведомств и организаций, желающих предоставлять свои услуги с помощью портала.

Услугу можно рассматривать как распределённый во времени процесс, имеющий несколько точек, через которые можно повлиять на его исход (отменить через портал, отказать в ведомстве, отправить на портал сведения об изменении статуса услуги, а также отправить результат её оказания). В этой связи каждая услуга проходит свой собственный жизненный цикл по этому процессу, накапливая в его ходе данные о запросе пользователя, полученных ошибках, результатах оказания услуги и т.п. Это позволяет в любой момент времени иметь возможность контроля и принятия решения о дальнейших действиях по обработке услуги.

О том, как и с помощью чего можно организовать подобную обработку, мы и поговорим далее.
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры2.4K
Комментарии 10

Interprocess communication с использованием GRPC

.NET
Tutorial

Сегодня хочу рассказать о нашем пути реализации межпроцессного взаимодействия между приложениями на NET Core и NET Framework при помощи протокола GRPC. Ирония заключается в том, что GRPC, продвигаемый Microsoft как замена WCF на своих платформах NET Core и NET5, в нашем случае случился именно из-за неполноценной реализации WCF в NET Core.


Я надеюсь эта статья найдется поиском когда кто-то будет рассматривать варианты организации IPC и позволит посмотреть на такое высокоуровневаое решение как GRPC с этой, низкоуровневой, стороны.

Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры3.9K
Комментарии 8

Интеграция с “Госуслугами”. Особенности реализации задачи средствами Workflow Core (часть III)

.NETC#
Ранее мы рассмотрели роль СМЭВ в обеспечении работоспособности портала «Госуслуг», а также общие принципы организации взаимодействия с ним на стороне поставщика сведений посредством Workflow Core.

Поскольку задача интеграции решается через посредника (СМЭВ) и, помимо прочего, с использованием движка, опыта работы с которым прежде не было, то наивно будет ожидать, что всё пройдёт гладко. Некоторым сложностям, с которыми мы встретились при решении задачи, посвящена данная статья.
Читать дальше →
Всего голосов 4: ↑3 и ↓1 +2
Просмотры1.4K
Комментарии 2