К содержимому
Типичные ошибки C# и как их исправить: страница 3
JSON в C#: массивы и отдельные элементыКак разобрать JSON с Json.NET, когда приходит то массив, то один объект: JToken, JsonConverter, SingleOrArrayConverter и примеры десериализации в C#.
Ошибка CS0120 в C#: нестатический член классаЧто означает ошибка CS0120 в C#: обращение к нестатическому члену без объекта, чем отличаются статические и экземплярные члены и как её исправить.
Преобразование JSON в dynamic-объекты в C#Как преобразовать JSON в динамические объекты в C#: dynamic, ExpandoObject, JObject и System.Text.Json, с примерами кода и разбором плюсов и минусов.
Как передать массив в хранимую процедуру SQL ServerКак передать массив значений в хранимую процедуру SQL Server из C#: параметры табличного типа, строка с разделителями и XML или JSON, плюс сравнение подходов.
Десериализация JSON в C# с примерами кодаКак десериализовать JSON в C#: System.Text.Json и Newtonsoft.Json, настройка атрибутов, работа с вложенными объектами и массивами, примеры кода и ошибки.
Как проверить, открыт ли файл в C#Как проверить, используется ли файл другим процессом: попытка открытия с FileShare, обработка IOException и надёжные приёмы, которые не дают ложных результатов.
MIME-тип файла по сигнатуре в C#Как определить MIME-тип файла по его содержимому в C#: сигнатуры (magic numbers), чтение заголовка, urlmon.dll и готовые библиотеки, с примерами.
Асинхронные методы в синхронном контексте C#Как запустить асинхронный метод из синхронного кода в C#: GetAwaiter().GetResult(), Task.Run, риски deadlock и безопасные варианты.
Работа с FormData в ASP.NET MVC на C#Как отправить модель через FormData и принять её в ASP.NET MVC: подготовка класса на C#, формирование FormData, AJAX-запрос и обработка в контроллере.
Группировка по нескольким столбцам в C#Как сгруппировать данные по нескольким полям в C#: GroupBy с анонимным типом, составной ключ, DataTable, Entity Framework и вывод результата.
Debug и Release сборки в C#: разницаЧем Debug-сборка отличается от Release в C#: оптимизации компилятора, символы отладки, скорость работы, размер файла и как выбрать конфигурацию.
Глубокое клонирование объекта в C#Как сделать глубокую копию объекта в C#: сериализация, конструкторы копирования, ICloneable и рефлексия, с примерами кода.
Параметризованные запросы против SQL-инъекций в C#Как защитить приложение на C# от SQL-инъекций: параметризованные запросы SqlCommand, примеры кода и типичные ошибки при работе с вводом.
Выбор между decimal и double в C#Чем decimal отличается от double в C#: точность вычислений, диапазон, скорость и рекомендации, какой тип выбрать для денег и расчётов.
Передача данных между формами в C#Как передать данные между формами Windows Forms в C#: конструктор, свойства, ShowDialog, события, делегаты и интерфейсы. Примеры на .NET 8 и сравнение способов.
Обработка CSV-файлов в C#: техники и советыКак читать и записывать CSV-файлы в C#: разбор строк и заголовков, кавычки и разделители, библиотеки CsvHelper и TextFieldParser, примеры кода.
Как избежать deadlock при async/await в C#Почему возникает deadlock при использовании async/await в C#: блокирующие вызовы Wait и Result, ConfigureAwait и способы избежать зависания.
Преобразование строки в int в C#: способы и ошибкиКак преобразовать строку в целое число в C#: Parse, TryParse и Convert.ToInt32, обработка ошибок и культуры, сравнение способов с примерами кода.
IEnumerable или IQueryable в C#Чем IEnumerable отличается от IQueryable в C#: где выполняется запрос, как работает отложенное выполнение и какой интерфейс выбрать.
Реализация INotifyPropertyChanged в C# без лишнего кодаСравнение способов реализовать INotifyPropertyChanged в .NET: ручной код, CallerMemberName, Fody и MVVM-фреймворки, с примерами кода и советами по выбору.
Сколько раз символ встречается в строке C#Как посчитать, сколько раз символ или подстрока встречается в строке на C#: циклы, LINQ, Regex и Split с примерами кода и сравнением производительности.
Обновление GUI из фонового потока в C#Как безопасно обновлять элементы интерфейса из другого потока в C#: Invoke, BeginInvoke, BackgroundWorker, async и await, обработка исключений и практики.
Массив байтов из потока (Stream) в C#Как получить массив байтов из Stream в C#: MemoryStream, CopyTo, чтение по частям, работа с файловыми и сетевыми потоками и типичные ошибки позиции.
Создание сущности в запросе LINQ to EntitiesПочему нельзя создавать сущности внутри запросов LINQ to Entities и как это обойти: проекция в DTO, конструктор после запроса, AsEnumerable и типичные ошибки.
Естественная сортировка в C#: принцип и реализацияКак реализовать естественную сортировку строк с числами в C#: интерфейсы IComparable и IComparer, регулярные выражения и пример собственного компаратора.
HTML-таблица в DataTable на C#Как загрузить HTML-таблицу в DataTable в C#: разбор разметки через HtmlAgilityPack, создание столбцов, заполнение строк и привязка результата к ADO.NET.
Unix Timestamp в DateTime и обратно в C#Как преобразовать Unix-время в DateTime и обратно в C#: DateTimeOffset.FromUnixTimeSeconds, секунды и миллисекунды, часовые пояса и частые ошибки.
Полное руководство по клонированию объектов в C#Как клонировать объект вместе с вложенными ссылками в C#: JSON-сериализация, ручное копирование и другие способы, их плюсы и минусы.
Динамическая компиляция кода в C#Как скомпилировать и выполнить код C# во время работы программы: Roslyn, CSharpCodeProvider, загрузка сборок и вопросы безопасности.
Поиск минимума и максимума по свойству в LINQКак найти объект с наименьшим или наибольшим значением свойства в C# через LINQ: Min, Max, OrderBy, Aggregate и MinBy/MaxBy.