Инструмент эффективно устраняет следующие наиболее распространенные ошибки и предупреждения NuGet:
☑️ NU1107 – Unable to resolve dependency constraints between packages.
☑️ NU1202 – A dependency package doesn’t contain any assets compatible with the project.
☑️ NU1605 – A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved.
☑️ NU1701 – PackageTargetFallback / AssetTargetFallback was used to select assets from a package.
👉 Анонс инструмента
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔13👍7❤1
Антон Антонов, сеньор фуллстек-разработчик, рассматривает кейс реализации обработки ошибок с исполованием IExceptionHandler в .NET Core 8.0.
Этот подход следует похожим паттернам предыдущих методов обработки ошибок в ASP.NET Core, но добавляет дополнительную возможность внедрения кастомной логики обработки исключений в exception handling middleware.
📌 Exception handling middleware эффективно управляет несколькими ключевыми аспектами:
✅ Он обрабатывает случаи, когда клиент закрывает запрос (499 Client Closed Request) или когда ответ уже начал отправляться.
✅ Он также очищает контекст HTTP, устанавливает соответствующий HTTP-код, логирует ошибку и добавляет диагностику.
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Обработка ошибок с помощью IExceptionHandler в ASP.NET Core 8.0
Давайте рассмотрим, как вы можете реализовать обработку ошибок, используя IExceptionHandler в .NET Core 8.0. Этот подход следует похожим паттернам предыдущих методов обработки ошибок в ASP.NET Core,...
👍18❤1
FirstOrDefault
отлично подходит для запросов к базе данных, метод Find
, специально разработанный для экземпляров List<T>
, может предложить повышение производительности при работе со списками в памяти. #dotnet #csharp #tip by Adem Sahin
Please open Telegram to view this post
VIEW IN TELEGRAM
❤35👍33🤔10
This media is not supported in your browser
VIEW IN TELEGRAM
🛠️ Interceptors
Новая статья в серии от JetBrains про возможности C# 12 и то, как ReSharper и Rider упрощают их внедрение в вашу кодовую базу.
Новая статья в серии от JetBrains про возможности C# 12 и то, как ReSharper и Rider упрощают их внедрение в вашу кодовую базу.
👍5🌚2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🔤 Азбука SQL в примерах. Часть 3. Обрабатываем результаты и делаем сложные запросы
Мы уже умеем довольно много, и наша база содержит полезную информацию. А еще она умеет проверять новые данные, когда мы их добавляем. Пора разобраться, как их обрабатывать, чтобы узнать из данных что-то интересное.
👉 Читать статью
👉 Часть 1
👉 Часть 2
Мы уже умеем довольно много, и наша база содержит полезную информацию. А еще она умеет проверять новые данные, когда мы их добавляем. Пора разобраться, как их обрабатывать, чтобы узнать из данных что-то интересное.
👉 Читать статью
👉 Часть 1
👉 Часть 2
😁26🤔2
Улучшения производительности JsonSerializer в .NET 8 на практике
#dotnet #csharp #benchmarks by Dave Callan
#dotnet #csharp #benchmarks by Dave Callan
🔥28👍10💯1
🔹 SQL-Server: Exploration of datetime2(7) precision (C#)
🔹 Reveal Data provider parameter values at run time
🔹 C# Generic Math
🔹 Working with .zip files in C#
🔹 Working with the using directive in C#
🔹 C# .NET Tools with System.CommandLine
🔹 C# Language extensions
🔹 Tips on interacting with a database with C#
🔹 Update Bootstrap in Visual Studio
🔹 C# Different way to join string array
🔹 ASP.NET Core/Razor Pages export to Excel
🔹 Using FluentScheduler with C#
🔹 Visual Studio debugging windows services
🔹 C# User-defined explicit and implicit conversion operators
🔹 Gentle introduction for generics (C#)
🔹 Bogus custom Dataset
🔹 Gentle introduction to Generic Repository Pattern with C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Какие критерии экспертности для вас важны?
Anonymous Poll
52%
Опыт работы
39%
Успешные кейсы
4%
Известность в сообществе
26%
Умение обучать других
9%
Образование
3%
Наличие сертификатов
57%
Глубокие знания в специализированной области
0%
Свой вариант (напишу в комментарии)
22%
Посмотреть результаты
🔥10👍4🎉3
Forwarded from Библиотека девопса | DevOps, SRE, Sysadmin
💰⬆️ 10 факторов, влияющих на зарплату программиста
Узнайте 10 факторов, как превратиться из рядового программиста в высокооплачиваемого специалиста и научиться аргументированно запрашивать зарплату выше рынка.
Читать статью
#новость
Узнайте 10 факторов, как превратиться из рядового программиста в высокооплачиваемого специалиста и научиться аргументированно запрашивать зарплату выше рынка.
Читать статью
#новость
👍6🙏1🥱1
Так вот, в новой веб-версии магазина приложений для Windows 10/11 под названием Microsoft Store команда перешла во фронтенде с React на Shoelace + Lit + Vite, а также перенесла серверную часть на ASP.NET.
Обновлённая веб-версия Microsoft Store разработана как замена существующему способу поиска приложений Windows в интернете, при котором ссылки с сайта открываются в клиенте Microsoft Store в Windows 10 или Windows 11.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🥱2🤔1
1️⃣ Для .NET Core достаточно установить свойство
MSBuild
'ServerGarbageCollection
'.2️⃣ Для .NET вам придется либо изменить
app.config
, либо использовать nuget-пакет MSTest, который делает тестовый проект исполняемым. В этом случае вы можете добавить app.config
с включенным серверным GC.Другие способы: установить переменную окружения
COMPlus_gcServer
или DOTNET_gcServer
#dotnet #csharp #tip by Сергей Тепляков
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
Представьте, что вы оказались в сложной ситуации, и вам нужно принять решение. Какого сотрудника вы возьмете в команду?
Anonymous Poll
22%
С достойным портфолио и хард-скиллами, но неприятного в общении
52%
Легкого в общении и целеустремленного, но проседающего в технических навыках
26%
Посмотреть результаты
😁12💯1
📌 Из доклада вы узнаете о механизмах работы Blazor (Server и WebAssembly), возможностях Razor и библиотек компонентов для него.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁22👍3🥱2🔥1
⏯ YouTube | Apple Подкасты | Google Подкасты | Яндекс Музыка
#подкасты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
⚡Свежие и обновленные статьи: подборка для C#-разработчика с Code Maze
🔸 Модификатор доступа к файлу в C#: какие проблемы решает и как использовать
🔸 Получение данных из MongoDB с использованием ObjectId в C#: логическое продолжение руководства «Начало работы с ASP.NET Core и MongoDB»
🔸 Отладка и профилирование многопоточных приложений .NET: обзор инструментов, доступных в Visual Studio
🔸 Как сериализовать объект в query string format в C#: проблемы, которые могут возникнуть при работе с вложенными объектами и массивами, и способы их решения
🔸 Service discovery в .NET: что это и как использовать
🔸 Как получить имена свойств JSON в C#: использование Newtonsoft.Json и System.Text.Json
🔸 Реализация кастомного Authorization Policy Provider с помощью ASP.NET Core: как получить и предоставить политику авторизации для определенного имени политики
🔸 Значения по умолчанию для лямбда-выражений в C#: обзор одного из многих улучшений, появившихся в C# 12
🔸 Управление точностью десятичных чисел в C#: от теории к практике
🔸 Как инициализировать параметры record в C#: простой гайд с примерами
🔸 Различия между NUnit, xUnit and MSTest: на заметку C#-разработчику
🔸 Архитектурный паттерн «клиент-сервер» на C#: как работает паттерн, его компоненты, преимущества и проблемы, которые он создает
🔸 Согласованное байтовое представление строк без явного указания кодировки: рабочий кейс для C#-разработчика
🔸 Как добавить или обновить значения строки запроса в C#: обзор различных способов решения задачи
🔸 Создание распределенных приложений с помощью .NET Aspire: использование нового стека на практике
🔸 Thread.Sleep vs. Task.Delay: сравнение двух часто используемых механизмов для введения задержек в коде
🔸 Как экранировать символ '\' в C#: обзор лучших практик
🔸 Как сохранить список в текстовый файл на C#: использование StreamWriter и File
🔸 Как проверить валидность строки в формате JSON на C#: практика работы с популярным форматом данных
🔸 Как откатить изменения в миграции EF Core: что делать, если накосячил
🔸 Как сравнить два списка по одному свойству в C#: обзор нескольких методов для понимания контекста
🔸 Как добавить custom claims к access токену в Duende Identity Server: практика работы с интерфейсом IProfileService
🔸 Как обрезать строку в .NET: сравнение различных методов с акцентом на производительность
🔸 Как получить значение свойства по имени в C#: использование рефлексии на практике
🔸 Самый быстрый способ преобразования JObject в словарь на C#: пример сценариев, в которых словарь является более подходящей структурой данных
#чтопроисходит
🔸 Модификатор доступа к файлу в C#: какие проблемы решает и как использовать
🔸 Получение данных из MongoDB с использованием ObjectId в C#: логическое продолжение руководства «Начало работы с ASP.NET Core и MongoDB»
🔸 Отладка и профилирование многопоточных приложений .NET: обзор инструментов, доступных в Visual Studio
🔸 Как сериализовать объект в query string format в C#: проблемы, которые могут возникнуть при работе с вложенными объектами и массивами, и способы их решения
🔸 Service discovery в .NET: что это и как использовать
🔸 Как получить имена свойств JSON в C#: использование Newtonsoft.Json и System.Text.Json
🔸 Реализация кастомного Authorization Policy Provider с помощью ASP.NET Core: как получить и предоставить политику авторизации для определенного имени политики
🔸 Значения по умолчанию для лямбда-выражений в C#: обзор одного из многих улучшений, появившихся в C# 12
🔸 Управление точностью десятичных чисел в C#: от теории к практике
🔸 Как инициализировать параметры record в C#: простой гайд с примерами
🔸 Различия между NUnit, xUnit and MSTest: на заметку C#-разработчику
🔸 Архитектурный паттерн «клиент-сервер» на C#: как работает паттерн, его компоненты, преимущества и проблемы, которые он создает
🔸 Согласованное байтовое представление строк без явного указания кодировки: рабочий кейс для C#-разработчика
🔸 Как добавить или обновить значения строки запроса в C#: обзор различных способов решения задачи
🔸 Создание распределенных приложений с помощью .NET Aspire: использование нового стека на практике
🔸 Thread.Sleep vs. Task.Delay: сравнение двух часто используемых механизмов для введения задержек в коде
🔸 Как экранировать символ '\' в C#: обзор лучших практик
🔸 Как сохранить список в текстовый файл на C#: использование StreamWriter и File
🔸 Как проверить валидность строки в формате JSON на C#: практика работы с популярным форматом данных
🔸 Как откатить изменения в миграции EF Core: что делать, если накосячил
🔸 Как сравнить два списка по одному свойству в C#: обзор нескольких методов для понимания контекста
🔸 Как добавить custom claims к access токену в Duende Identity Server: практика работы с интерфейсом IProfileService
🔸 Как обрезать строку в .NET: сравнение различных методов с акцентом на производительность
🔸 Как получить значение свойства по имени в C#: использование рефлексии на практике
🔸 Самый быстрый способ преобразования JObject в словарь на C#: пример сценариев, в которых словарь является более подходящей структурой данных
#чтопроисходит
Code Maze
File Access Modifier in C# - Code Maze
In this article, we will learn about the “file” access modifier recently introduced in C# 11. Let’s dive in.
❤7👍6🥱2🥰1
⚡️ Команда .NET представила MSTest Runner, новый легковесный инструмент для запуска тестов MSTest
📌 Его цель — сделать тесты более портативными и надежными, ускорить их выполнение и предоставить расширяемый опыт тестирования.
🛠 MSTest Runner — это способ создания и запуска тестов MSTest как независимого портативного исполняемого файла.
Для размещения и запуска тестов используется простое консольное приложение, поэтому для их выполнения не требуются внешние инструменты, такие как
Это делает MSTest Runner идеальным инструментом для написания тестов для устройств с ограниченной мощностью или памятью.
📌 Установка: MSTest Runner поставляется вместе с пакетом NuGet
После этих изменений пересоберите тестовый проект, и ваши тесты создадут исполняемый файл, который напрямую их запускает.
📌 Его цель — сделать тесты более портативными и надежными, ускорить их выполнение и предоставить расширяемый опыт тестирования.
🛠 MSTest Runner — это способ создания и запуска тестов MSTest как независимого портативного исполняемого файла.
Для размещения и запуска тестов используется простое консольное приложение, поэтому для их выполнения не требуются внешние инструменты, такие как
vstest.console
, dotnet test
или Visual Studio
. Это делает MSTest Runner идеальным инструментом для написания тестов для устройств с ограниченной мощностью или памятью.
📌 Установка: MSTest Runner поставляется вместе с пакетом NuGet
MSTest.TestAdapter
начиная с версии 3.2.0
. Для его включения в ваш проект достаточно установить обновленный пакет и установить два свойства MSBuild: <EnableMSTestRunner>
и <OutputType>
.После этих изменений пересоберите тестовый проект, и ваши тесты создадут исполняемый файл, который напрямую их запускает.
🤔12🔥6🥱6🌚1
💬 А вы отключаете top-level statements в своем проекте?
Top-level statements позволяют отказаться от некоторых формальностей при написании приложений и сделать код проще.
Возможно, это не очень будет заметно при написании сложных приложений, но может хорошо сэкономить время при проведении исследований, создании небольших утилит и прототипов.
👍 — конечно отключаю
🤔 — не отключаю
🥱 — не знаю, что это такое
Top-level statements позволяют отказаться от некоторых формальностей при написании приложений и сделать код проще.
Возможно, это не очень будет заметно при написании сложных приложений, но может хорошо сэкономить время при проведении исследований, создании небольших утилит и прототипов.
👍 — конечно отключаю
🤔 — не отключаю
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145🤔98🥱66👏3❤2
Помимо
System.Text.Json
и Newtonsoft.Json
в качестве альтернативы BinaryFormatter
для серилизации/десериализации объектов в .NET можно использовать MessagePack
и MemoryPack
. Есть и другие способы, но эти работают без дополнительных настроек и показывают неплохие результаты производительности.
1️⃣
var bytes = MessagePackSerializer.Serialize(People, ContractlessStandardResolver.Options);
return MessagePackSerializer.Deserialize<List<Person>>(bytes, ContractlessStandardResolver.Options);
2️⃣
[MemoryPackable]
public partial class Person
{
public string Name { get; set; }
public int Age { get; set; }
public List<string> ProgrammingKeywords { get; set; } = [];
}
...
var bytes = MemoryPackSerializer.Serialize(People);
return MemoryPackSerializer.Deserialize<List<Person>>(bytes);
👉 Подробнее
#benchmarks #dotnet #csharp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24
null
, чтобы они стали доступны для сборщика мусора?На уровне 0 метод отслеживания доступности локальных переменных в .NET runtime может отличаться или быть менее агрессивным, чем на более высоких уровнях.
Это может означать, что объекты, на которые ссылаются локальные переменные в методе, скомпилированном на уровне 0, могут не сразу стать доступными для сборки мусора, даже если они кажутся вышедшими из области видимости.
Обычно это временная ситуация, так как после повторной компиляции метода на более высоком уровне, более оптимизированный код может лучше управлять доступностью объектов.
👉 Подробнее
#dotnet #csharp #tip by Сергей Тепляков
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍5🎉2🥱2⚡1