C# 1001 notes
6.51K subscribers
328 photos
9 videos
2 files
313 links
Регулярные короткие заметки по C# и .NET.

Просто о сложном для каждого.

admin - @haarrp
加入频道
​​Convert int to Enum by Type Casting

You can explicitly type cast an int to a particular enum type, as shown below.
​​Convert int to Enum using Enum.ToObject() Method

Use the Enum.ToObject() method to convert integers to enum members, as shown below.
​​Convert an Object to JSON in C#

Here you will learn how to convert C# object to JSON using Serialization.

JSON (Javascript Object Notation) is used for storing and data transfer. It is also used in API calls to exchange the data from API to different web applications or from browser to server and vice versa.

Serialization is the process of storing the state of an object and being able to recreate it when required. The reverse of it is known as Deserialization.

The .NET 5 framework provides the built-in JsonSerializer class in the System.Text.Json namespace to convert C# objects to JSON and vice-versa.

The .NET 4.x framework does not provide any built-in JsonSerializer class that converts objects to JSON. You have to install the NuGet package Microsoft.Extensions.Configuration.Json in your project to include the System.Text.Json.JsonSerializer to your project which can be used to convert objects to JSON and vice-versa.
​​Convert an Object to a Minified JSON String

The following example shows the conversion of an object to the formatted JSON string:

In the above example, we specified an option with WriteIndented=true as a parameter in the Serialize() method. This will return a formatted string with indentation.
​​Convert a List to a JSON String

The following converts a list collection of objects to JSON array.
​​Convert an Object to a UTF-8 String

Serialization to an utf-8 byte array is a bit faster than the string method. This is because the bytes of utf-8 is not required to convert to strings of utf-16.

The following example shows the conversion of an object to a minified JSON string using JsonSerializer.SerializeToUtf8Bytes method.

Thus, you can convert C# object to JSON in different ways for different versions using JsonConvert.Serialize() method in .NET 4.x and .NET 5.
Forwarded from C# (C Sharp) programming
⚜️ Подборка Топ-10 поезныйх библиотек для разработчиков .NET

1) Newtonsoft.Json: Эта библиотека широко используется для работы с данными JSON в приложениях .NET. Newtonsoft.Json обеспечивает высокую производительность и простоту использования, что делает ее отличным решением для сериализации и десериализации данных JSON.

2) Dapper: Это простой и эффективный ORM, который обеспечивает высокую производительность и гибкость при работе с реляционными базами данных. Dapper прост в использовании и предлагает быстрый и эффективный способ взаимодействия с базами данных.

3) Polly: Polly - это библиотека, которая помогает легко обрабатывать ошибки в приложениях .NET.

4) AutoMapper: Эта библиотека .NET Core упрощает сопоставление объектов с объектами путем автоматического сопоставления свойств одного объекта с другим. Эта библиотека особенно полезна в больших проектах, где сопоставление может занять много времени и стать утомительным.

5) FluentValidation: Это библиотека, которая предоставляет API для построения правил валидации. Она позволяет легко создавать сложную логику проверки и поддерживает широкий спектр скриптов валидации, что делает ее полезным инструментом для обеспечения целостности данных в ваших приложениях.

6) Serilog: Эта библиотека представляет собой структурированную библиотеку протоколирования, которая упрощает сбор и анализ журналов вашего приложения. Она обеспечивает гибкость и расширяемость и поддерживает различные источники для хранения журналов, включая Elasticsearch, SQL Server и другие.

7) Swashbuckle.AspNetCore.Swagger: Эта библиотека генерирует документацию OpenAPI для вашего ASP.NET Core Web API. Она облегчает понимание функциональности вашего API и позволяет легко генерировать код для вашего API.

8) NLog: Это бесплатная платформа протоколирования для .NET с широкими возможностями маршрутизации и управления журналами.

9) Moq4: Это популярный фреймворк mocking для приложений .NET. Она позволяет легко создавать объекты для модульного тестирования.

10) StackExchange.Redis: Это библиотека для работы с базами данных Redis в приложениях .NET. Она предоставляет простой и эффективный способ взаимодействия с Redis, а также обеспечивает высокую производительность и масштабируемость.

@csharp_ci
Please open Telegram to view this post
VIEW IN TELEGRAM
Converting Strings to .NET Objects – IParsable and ISpanParsable

Преобразование строк в объекты .NET с использованием новых интерфейсов IParsable и ISpanParsable: на заметку C#-разработчику.

Читать

@csharp_1001_notes
Grouping a Collection

To group a collection using LINQ, you can use the GroupBy() method:

using System.Linq;

List<string> names = new List<string> { "John", "Jane", "Doe" };
var groups = names.GroupBy(x => x.Length);

foreach (var group in groups)
{
Console.WriteLine($"Names with {group.Key} characters:");
foreach (string name in group)
{
Console.WriteLine(name);
}
}


@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Шаблон ASP.NET Core, построенный в соответствии с принципами чистой архитектуры

Шаблона предоставялет простой и эффективный подход к разработке корпоративных приложений, используя возможности чистой архитектуры и ASP.NET Core.

С его помощью вы можете легко создать одностраничное приложение с использованием ASP NET Core + Angular/React, придерживаясь принципов чистой архитектуры.

@csharp_1001_notes
Forwarded from C# (C Sharp) programming
This media is not supported in your browser
VIEW IN TELEGRAM
📣 Внимание C# разрабочики!

Сохраните этот пост и возвращайтесь к нему в любое время, когда вам понадобится освежить в памяти методы LINQ!

@csharp_ci
🔑 Keyed Services в .NET8 Dependency Injection: обзор новой фичи, которая доступна в предварительный версии.

📌 Читать

@csharp_1001_notes
Хотите построить масштабную систему?

Рано или поздно вам понадобится ограничение скорости.

Это метод ограничения количества запросов, поступающих к вашему API:
- Улучшает безопасность
- Предотвращает перегрузку
- Уменьшает использование ресурсов

.NET 7 имеет встроенную поддержку ограничения скорости.

@csharp_1001_notes
Создание пользовательского протокола URL в .NET

https://dev.to/jamiemcmanus/creating-a-custom-url-protocol-in-net-322h

@csharp_1001_notes
Включение CORS в ASP.NET Core наиболее простым способом

https://dev.to/bytehide/enable-cors-in-aspnet-core-in-the-easiest-way-3c5i


@csharp_1001_notes
🔎 Полное руководство по созданию приложения-клона Google Translate с нуля на .NET

Добрый день! Я действительно взволнован проектом, который мне удалось создать для вас. Я сделал всё возможное, чтобы представить вам что-то с почти полной функциональностью, что-то, что вы можете продемонстрировать в своём портфолио, если вы новичок, и не волнуйтесь, дальше я начну создавать проекты для разработчиков среднего и продвинутого уровня, просто имейте немного терпения, пока я сосредоточен на новых разработчиках .NET.

Сегодняшний проект является клоном приложения Google Translate с использованием Google translate API v2. Я эстет, поэтому я представлю вам красивое приложение, однако оно будет не только «красивым», но также будет переводить текст, определять язык на основе пользовательского ввода, отображать поддерживаемые языки и менять местами пользовательский ввод с результатом перевода. Так что, если вы так же взволнованы, как и я, давайте сделаем это!

Статья
Полный код

@csharp_ci
Как добавить тесты для существующего кода с методами, которые не являются публичными

https://dev.to/ant_f_dev/how-to-add-tests-for-existing-code-with-methods-that-arent-public-3e5o

@csharp_ci