Идиомы программирования на C# [требует правки]

306
28 октября 2017, 14:14

В любом языке программирования существуют устойчивые конструкции проверенные временем, которые можно применять не боясь, что это будет не эффективно или не читаемо. Как пример могу привести недавнюю проблему при копировании одного потока в другой я изначально сделал так:

MemoryStream copyStream = new MemoryStream();
workMemoryStream.CopyTo(copyStream);

и долго не мог понять в чем проблема почему поток copyStream.Lenght = 0 пока мне не подсказали что надо делать так:

MemoryStream copyStream = new MemoryStream();
workMemoryStream.Seek(0, SeekOrigin.Begin);
workMemoryStream.CopyTo(copyStream);

Идиома? А почему нет, если при копировании одного потока в другой нет смысла писать просто CopyTo пока не переместишь указатель копируемого потока в начало?

Или к примеру как правильно возвращать из метода ошибку, если что-то пошло не так, через bool или использовать что то свое?

Подскажите где можно найти идиоматичный код на C# желательно с комментариями для обучения и применения его на практике?

READ ALSO
Проверка на наличие в [,] массиве

Проверка на наличие в [,] массиве

Есть переменная, допустим string s = "/87536464", необходимо проверить её на наличие в первом столбце [,] массива и в случае, если такого значения там...

359
Настройка отображения данных в WinForms

Настройка отображения данных в WinForms

Делаю программку, наверно правильно Parser называется

244
В webApi контроллере не работет Ninject

В webApi контроллере не работет Ninject

Не могу понять как запустить Ninject в Api Controller при добавлении его в MVC проект

189
Цифровая подпись RSA

Цифровая подпись RSA

Здравствуйте, делаю лабораторную работу и никак не могу разобраться как получить вменяемый хэш-образВ общем суть задачи состоит в 1

267