Skip to content

Категорія: Відповіді на запитання C#

У всех начинающих и опытных разработчиков, рано или поздно возникнет ситуация, решение которой не приходит самостоятельно. Эта рубрика содержит коллекцию распространенных вопросов по «Языку Программирования C#». От создания массива, до создания веб-сервиса.

Різниця між оператором == і методом Equals()

Зазвичай (якщо не йдеться про рядки) Equals порівнює значення, а == порівнює об’єктні посилання. Якщо два об’єкти, що порівнюються, посилаються на один і той самий…

String.Empty чи “” для ініціалізації рядка? [C#]

Використовуйте те, що ви і ваша команда вважаєте найбільш зручним для читання. Комусь подобається коротший варіант, комусь з використання класу. З точки зору продуктивності та…

Як видалити всі файли та папки в каталозі [C#]

Для видалення всіх файлів із папки можна скористатися класами DirectoryInfo і FileInfo:

Якщо у вашому каталозі може бути багато файлів, EnumerateFiles() є більш ефективною,…

IEnumerable или List – что использовать? [C#]

Використовуйте IEnumerable, якщо потрібні тільки базові функції над колекцією, наприклад, ітерація. Використовуйте IList, ICollection, якщо потрібні більш специфічні операції над колекцією. Якщо ви хочете тільки…

Отримати значення властивості за допомогою рефлексії [C#]

Розглянемо можливість отримання значення властивості за допомогою рефлексії. Для прикладу, створимо клас User, з таким вмістом:

Для отримання значення властивості, визначимо і використаємо наступний…

Як отримати індекс поточної ітерації циклу foreach [C#]

Для отримання індексу поточної ітерації циклу foreach можна скористатися кількома варіантами, розглянемо їх. Foreach призначений для ітерації над колекціями, які реалізують IEnumerable. Для цього потрібно…

Як генерувати випадкові буквено-цифрові рядки [C#]

Яким чином можна згенерувати один символ або рядок із випадкових символів, заданої довжини? Перший варіант полягає у створенні алфавітного рядка та отримання випадкового символу з…

Як впорядкувати список List за властивістю в об’єкті [C#]

Відсортувати список List<T> можна, використовуючи методи розширення, метод Sort, передаючи в нього делегат або ж реалізовуючи інтерфейси IComparable і IComparer. Для прикладу, візьмемо клас User…

Чому важливо перевизначити GetHashCode, коли перевизначається метод Equals? [C#]

Це пов’язано з тим, що фреймворк вимагає, щоб два однакові об’єкти мали однаковий хеш-код. Якщо ви перевизначите метод equals для спеціального порівняння двох об’єктів, і…