Здравствуйте, amx3000, Вы писали:
_FR>>Это подходит только для локальных переменных (и то не всех), но не подходит для полей класса или параметров методов.
A>Есть мнение, что нужно проектировать классы и методы таким образом, чтобы не было необходимости использовать using с полями класса или параметрами методов.
Ты же сам сообщением выше призывал всюду юзингом пользоваться!? Я только заметил, что "везде" пользоваться юзингод нельзя.
A>делал бы что-то вроде
Если, как показано, использовать внутри using, то не получится вернуть из функции закрытый стрим.
A>Кстати, не подскажете практический пример, для чего нужна была бы работа со Stream.Null? Кроме тестовых целей, как-то ничего в голову не приходит.
ИМХО, наоборот. Широко известна рекомендация не возвращать "null" как результат типа string или IEnumerable (а использовать String.Empty и пустой енумератор). Для стримов полезно пользоваться тем же правилом. То есть, когда надо возвратить стрим и по каким-то причинам не удаётся, следует или бросить исключение или вернуть Stream.Null, но не "null".
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>