Анонимный дотнетчик
1.76K subscribers
1 photo
8.57K links
Просто сборник свежих статей о дотнете.

- Обратная связь
- Записи для публикации в канал
- Вопросы к сообществу для обсуждения
Отправляйте через бот @DotnetterFeedbackBot
Download Telegram
What’s New in Visual Studio 2019 version 16.5 Preview 2 for C++, Xamarin, and Azure Tooling Experiences

Last week, Visual Studio 2019 version 16.5 Preview 2 was released, bringing many new features and improvements for developers in Visual Studio to help you build better software faster. Please read some highlights of new features and improved developer experiences in this page.
The post What’s New in Visual Studio 2019 version 16.5 Preview 2 for C++, Xamarin, and Azure Tooling Experiences appeared first on Visual Studio Blog.


https://devblogs.microsoft.com/visualstudio/whats-new-in-visual-studio-2019-version-16-5-preview-2-for-cpp-xamarin-and-azure-tooling-experiences/
Using Swagger In .NET Core 3+

Are there new .NET Core API projects that don’t use Swagger? It’s one of the first things I install on a new project and even if I end up testing an API with something like Postman, the fact that I can quickly show a GUI to run any API endpoints for testers, other devs, hell […]
The post Using Swagger In .NET Core 3+ appeared first on .NET Core Tutorials.


https://dotnetcoretutorials.com/2020/01/31/using-swagger-in-net-core-3/
Просто о NModbus(RTU)

Данная статья рассчитана на новичков.ТеорияNModbus — коммуникационный протокол, основанный на архитектуре ведущий-ведомый (master-slave). Использует для передачи данных интерфейсы RS-485, RS-422, RS-232, а также Ethernet сети TCP/IP. Данный протокол достаточно популярен при разработке разной периферии для умного дома, а так же интернета вещей.КомандыРуководство, с перечнем всех команд можно найти в официальном мануале, там так же есть примеры кода для TCP/IP соединений.Итак, для того, чтобы управлять чем-либо, нам необходимо знать, что и куда отправлять. Значит нам нужна карта регистра. Уточню, что ячейки регистра бывают:1. Только для чтения2. Для чтения и записиСамая простая карта, выглядит примерно таким образом:СкриншотТак же, там присутствуют разные пояснения, о том например, какое максимальное/минимальное значение может быть передано по адресу и тд. Читать дальше →

https://habr.com/ru/post/486346/?utm_campaign=486346&utm_source=habrahabr&utm_medium=rss
[recovery mode] CRUD операции с Entities в DialogFlow (C#)

ВступлениеСовсем недавно я начал работу над новым проектом, который включал в себя работу с уже достаточно известны сервисом (AI) от Google — DialogFlow. Суть заключалась в том, что у нас был бот (Telegram) который работал с API нескольких сайтов, а сам же DialogFlow помогал нам структурировать само общение с человеком, для чего он в принципе и создавался. Нужно сказать, что статья предназначена для людей, которые только начали знакомство с сервисом или уже имеют небольшой опыт, так далее возможны термины: Intent, Context, Action, Event ну и то ради чего мы и собрались — Entities. Надеюсь, что статья будет полезна тем, кто немного не понял как именно через код можно проделывать CRUD операции с Entities.Entities в DialogFlowВ DialogFlow Entities представляют собой некие сущности, которые состоят из ReferenceValue и Synonyms. Что-то похожее на ключ-значение, только с той разницей, что синонимов может быть много, и чем их больше — тем лучше, поскольку это «упрощает боту жизнь» и ему легче понять о каком значении идет сейчас речь, а поставленная галочка на Fuzzy matching поможет боту еще и понимать о чём идет речь, даже если вы упустили одну букву или другой символ. Выглядит это примерно так:Москва — москва, Москва, Мсква…Заканчивая короткий экскурс, хотел бы добавить, что именно с Entity происходит очень много всякой возни. Я конечно же не уменьшаю значение интентов и так далее, но факт остается фактом. Читать дальше

https://habr.com/ru/post/486348/?utm_campaign=486348&utm_source=habrahabr&utm_medium=rss
Развертывание в Docker и Kubernetes образа StatsD+Grafana

В начале моего изучения Docker и Kubernetes мне нехватало простого и понятного примера, с которым можно было бы «поиграться», изучая особенности этой среды. Этой статьей хотелось бы закрыть этот пробел. Здесь я расскажу об интеграции .NET Core приложения с Telegraf и Grafana, о том, как шлются метрики и как деплоить в Docker и Kubernetes. Примеры в статье расчитаны на тех, кто начинает изучать данную область, но базовыми понятиями желательно обладать, чтобы полностью понять статью. В ней описано, как развернуть контейнер, в котором есть StatsD, InfluxDB и Grafana, а также, как отправлять метрики различных типов из приложения. Читать дальше →

https://habr.com/ru/post/486172/?utm_campaign=486172&utm_source=habrahabr&utm_medium=rss
Microsoft полностью перейдет на отрицательный уровень выброса углерода к 2030 году

Компания анонсировала масштабный план по сокращению углеродного следа, который включает уменьшение эмиссии и удаление продуктов выбросов из атмосферы, содействие клиентам и партнерам, а также инвестирование $1 млрд в развитие климатических инноваций. Microsoft в лице генерального директора Сатьи Наделлы и других первых лиц компании официально заявила о намерении к 2030 году достигнуть отрицательного уровня эмиссии углерода, а к 2050 году полностью устранить последствия выбросов за все время с момента основания компании в 1975 году. Также Microsoft намерена инвестировать в развитие технологий по устранению углеродного следа $1 млрд и помогать своим клиентам в сокращении выбросов. Читать дальше →

https://habr.com/ru/post/484606/?utm_source=habrahabr&utm_medium=rss&utm_campaign=corporate_blog
[Из песочницы] .NET Core + RabbitMQ

При разработке микросервисов возникает вопрос о предоставлении информации от одного сервиса другим сервисам по мере возникновения каких-либо событий. При этом важно иметь систему без привязки отправителя к получателям. В этом случае используется паттерн Publisher-Subscriber.

На рынке существует множество продуктов для обмена сообщениями, которые поддерживают паттерн Publisher-Subscriber, например Azure Service Bus, RabbitMQ или Apache Kafka.

Недавно мною были опубликованы две NuGet библиотеки для быстрой и удобной настройки event-based communication с использованием Azure Service Bus и RabbitMQ. В этой короткой how-to статье описаны шаги для использования последней. Читать дальше →

https://habr.com/ru/post/486416/?utm_campaign=486416&utm_source=habrahabr&utm_medium=rss
Цензура в исходном коде .NET Framework

Пятничным вечером, проглядывая исходники с Reference Source, случайно наткнулся на подозрительно выглядящий комментарий:Некоторые слова заменены на 4 тире. Ну ладно, иногда разработчики действительно бывают весьма экспрессивны и не стесняются резких выражений… Но при всем желании я не смог вспомнить ни одного ругательства, которое бы подошло здесь по смыслу. Откуда же оно взялось? Читать дальше →

https://habr.com/ru/post/486456/?utm_campaign=486456&utm_source=habrahabr&utm_medium=rss
C# Static Analysis Tool Roslynator.Analyzers Now Has over 500 Ways to Improve Code

The new version 2.3.1 of the Roslynator.Analyzers package brings the number of analyzers, refactorings and fixes to over 500. Roslynator uses the open-source Roslyn .NET Compiler Platform to perform static analysis on your C# code. This analysis drives your IDE to display hints and actions to improve your code.
By Andy Clark

https://www.infoq.com/news/2020/01/roslynator-analyzers-231/?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=.NET
Найти порядок в хаосе ИТ: полезные ресурсы


В предыдущей статье я поделился своим видением процесса построения базовой системы для организации собственного развития (применимой к сфере ИТ).
В ней в общих чертах и весьма условно были представлены шаги, которые необходимо пройти, чтобы построить эту систему. Однако, хочется внести немного конкретики — поделиться ресурсами, которые помогут вам в получении новых знаний.
Так что всех заинтересованных прошу под кат!
Читать дальше →

https://habr.com/ru/post/486422/?utm_campaign=486422&utm_source=habrahabr&utm_medium=rss
Вывод информации об исключениях перед аварийным выходом

Зачем и для чегоВо время разработки не всегда всё бывает гладко. Бывают проблемы, которые не всплывают на тестах, а уже после релиза. Для таких случаев мы сделали небольшую систему отлова исключений и внутренних ошибок.
Читать дальше →

https://habr.com/ru/post/486510/?utm_campaign=486510&utm_source=habrahabr&utm_medium=rss
BlazingPizza: приложение на Blazor от начала и до конца. Часть 1. Настройка среды

     Всем привет! Если вы слышали о Blazor, но до сих пор не понимаете, что это такое. То вы по адресу. Это первая статья из цикла 12 статей, которая проведет вас через все круги ада весь процесс создания приложения на Blazor. В конце у нас будет готовый сайт небольшой пиццерии, вполне на уровне готовый сайтов некоторых пиццерий. Поэтому вам будет чем гордится;) Читать дальше →

https://habr.com/ru/post/486570/?utm_campaign=486570&utm_source=habrahabr&utm_medium=rss
Presentation: Entity Framework Debugging using SQL Server: A Detective Story

Chris Woodruff takes a look at database server configurations using MSSQL database profiling tools and understanding Query Execution Plans to get the most out of Entity Framework.
By Chris Woodruff

https://www.infoq.com/presentations/linq-mssql-ef/?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=.NET
[Перевод] Что нового в Visual Studio 2019 версии 16.5 Preview 2: C ++, Xamarin и Azure Tooling

На прошлой неделе была выпущена Visual Studio 2019 версии 16.5 Preview 2. Версия привнесла много новых функций и улучшений для разработчиков в Visual Studio, которые помогут быстрее создавать лучшее программное обеспечение. Знакомьтесь с новостями о новых возможностях и улучшенном опыте разработчиков в этой статье.Установите эту превью-версию рядом с основным выпуском Visual Studio и протестируйте новые функции, не удаляя текущую среду разработки. Читать дальше →

https://habr.com/ru/post/486458/?utm_source=habrahabr&utm_medium=rss&utm_campaign=corporate_blog
ArrayList vs List

A graduate developer asked a simple question the other day. Grad : “What type should I return from this method?” Me : “Make it a list” Seemed simple enough. I took a look at his code and was confounded on just what had gone wrong. Instead of using List<T>, they had used the type “ArrayList”. […]
The post ArrayList vs List<T> appeared first on .NET Core Tutorials.


https://dotnetcoretutorials.com/2020/02/03/arraylist-vs-list/
.NET Core vs Framework. Производительность коллекций


Релиз .NET Core 3.1 — хороший повод мигрировать свой проект с Framework на Core. Во-первых, это отполированная версия с долгосрочной поддержкой (LTS), т.е. её можно смело использовать в продакшене. Во-вторых, в третьей версии добавили поддержку WPF и WinForms, так что теперь появилась возможность мигрировать и десктопные приложения.
Мне стало интересно, какой прирост производительности можно ожидать от Core в самых базовых классах, которые максимально часто используются в коде. Например, коллекции List, Array и Dictionary.
Если вам тоже интересно, как и почему изменилась производительность основных коллекций в Core 3 — прошу под кат!
Читать дальше →

https://habr.com/ru/post/481558/?utm_campaign=481558&utm_source=habrahabr&utm_medium=rss
SourceLink, Consuming APIs, and NuGet Dependent Code in ReSharper and Rider 2019.3

Rider and ReSharper 2019.3 shipped last year already, but we still have a couple of features to tell you about! In this blog post, we will look at a few additions in the area of navigation. These include better support … Continue reading →
The post SourceLink, Consuming APIs, and NuGet Dependent Code in ReSharper and Rider 2019.3 appeared first on .NET Tools Blog.


https://blog.jetbrains.com/dotnet/2020/02/03/sourcelink-consuming-apis-nuget-dependent-code/
Quartz в ASP.NET Core

ВступлениеЗнаю, что на эту тему есть очень много статей и своего рода туториоалов, я уже и не говорю об официальной документации, но при работе над своим последним проектом я столкнулся с очень занятной проблемой, о которой мало где говорится. Речь сегодня пойдет о проблеме использования Dependency Injection и Quartz в проекте на платформе ASP.NET Core.Началось всё с того, что я не думал, что могут возникнуть какие-то проблемы и скажу сразу, что пробовал использовать различные подходы: добавлял все классы, которые включал в себя Quartz в services и юзать их через DI — мимо (но не полностью, как потом оказалось), пробовал добавить HostedService — тоже не работало (в конце прикреплю несколько хороших ссылок на полезные статьи о работе с Quartz) и так далее. Я уже думал, что у меня проблема с триггером — тоже нет. В этой короткой статье я попытаюсь помочь тем, у кого, возможно, была такая же проблема и надеюсь мое решение поможет им в дальнейшей работе. Под конец вступления хочу добавить, что буду весьма признателен если в комментариях те, кто хорошо знаком с технологией, дадут несколько советов, которые помогут улучшить то, что я предложил. Читать дальше →

https://habr.com/ru/post/486678/?utm_campaign=486678&utm_source=habrahabr&utm_medium=rss
Top 5 Best Zoom Cameras