C# (C Sharp) programming
По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ
Show more📈 Analytical overview of Telegram channel C# (C Sharp) programming
Channel C# (C Sharp) programming (@csharp_ci) in the Russian language segment is an active participant. Currently, the community unites 18 299 subscribers, ranking 7 324 in the Technologies & Applications category and 36 848 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 18 299 subscribers.
According to the latest data from 17 June, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -4 over the last 30 days and by 3 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 20.04%. Within the first 24 hours after publication, content typically collects 7.25% reactions from the total number of subscribers.
- Post reach: On average, each post receives 3 669 views. Within the first day, a publication typically gains 1 328 views.
- Reactions and interaction: The audience actively supports content: the average number of reactions per post is 0.
- Thematic interests: Content is focused on key topics such as .net, api, логика, архитектура, string.
📝 Description and content policy
The author describes the resource as a platform for expressing subjective opinions:
“По всем вопросам- @notxxx1
Реестр РКН: https://clck.ru/3Fk3kb
#VRHSZ”
Thanks to the high frequency of updates (latest data received on 18 June, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public JsonDictionary Parameters { get; set; } = new();
}
Запись JsonDictionary аналогична JsonDictionary<string, object>. При этом полиморфизм позволяет хранить значения любых типов в таком словаре.
А вот пример управления коллекцией JsonDictionary:
Product product = new() {Name="Phone",Price=500.95m,Amount=21,Parameters={
VirtualDictionary = new Dictionary<string,object>() {
{"Camera",13.5 },{"OS","Android" },{"Screen","1080x900"},{"Storage",32}
}
}};
db.Goods.Add(product);
db.SaveChanges();
Это сгенерирует следующие данные для поля в формате JSON, если настройка JsonSettings.StrictTypeSerialization имеет значение true (по умолчанию):
{
"Camera": [13.5, "System.Double"],
"OS": ["Android", "System.String"],
"Screen": ["1080x900", "System.String"],
"Storage": [32, "System.Int32"]
}
Также можно добавлять и редактировать элементы поля JsonDictionary:
Product product = db.Goods.FirstOrDefault();
product.Parameters.Add("Battery capacity", 3000);
product.Parameters.Edit(dict => {
dict["Battery capacity"] = 4000;
dict["Storage"] = 64;
dict.Add("RAM", 4);
return dict;
});
После этого JSON-поле примет следующий вид:
{
"Camera": [13.5, "System.Double"],
"OS": ["Android", "System.String"],
"Screen": ["1080x900", "System.String"],
"Storage": [64, "System.Int32"],
"Battery capacity": [4000, "System.Int32"],
"RAM": [4, "System.Int32"]
}
Управление элементами списка дел:
public class Note
{
public int Id { get; set; }
public string Header { get; set; }
public JsonList<TodoItem> Todos { get; set; } = new();
}
При этом в списке JsonList<TodoItem> можно также хранить элементы с типом, наследуемым от TodoItem.
Простое добавление полиморфного поля:
JsonProperty.EFCore:
using JsonProperty.EFCore;
class MyEntity
{
public int Id { get; set; }
public int Title { get; set; }
public JsonItem<Base> Content { get; set; } = new();
}
Теперь можно использовать полиморфное поле:
MyEntity myEntity = new();
myEntity.Content.Serialize(new DerivedType1());
Base val = myEntity.Content.Deserialize();
Console.WriteLine(val is DerivedType1); //true
▪Github
@csharp_ci.NET мы получили достаточно примитивный вариант хэш-функции для строк. В 2010 его обновили, а текущая версия ушла еще дальше вперед.
Поговорим про историю хэш-функций в .NET, почему так вышло и какие требования к ним применяются.
Затронем и тему криптографических функций — разберемся, зачем они вообще нужны и почему не используются по умолчанию.
Посмотрим на то, как проверяются качества хэш-функции в пакете SMHasher.
В качестве эталона будет предложена XXH3 и ее реализация на .NET, которая обгоняет текущий string.gethashcode по скорости и, скорее всего, превосходит по качеству.
📌Видео
@csharp_cidotnet add package ChatGptNet
▪Github
@csharp_cidotnet add package ChatGptNet
▪Github
@csharp_ci
Available now! Telegram Research 2025 — the year's key insights 
