Подтвердить что ты не робот

Почему нет Directory.Copy в С#

Я делаю программу на С# с большим количеством операций ввода-вывода. Некоторые из этих операций копируют каталоги.

Я был очень ошеломлен, когда понял, что у вас нет чего-то вроде Directory.copy(SourceDir, DestinationDir) на С#.

Я немного поработал в поисковых системах, и в msdn они дают образец кода для копирования каталогов. (http://msdn.microsoft.com/en-us/library/bb762914.aspx). Но при поиске немного дальше, есть метод Directory.Copy в пространстве имен Microsoft.VisualBasic.FileIO. (http://msdn.microsoft.com/en-us/library/ms127957.aspx)

Я мог бы ссылаться на это пространство имен и использовать этот метод, но должна быть причина, по которой Microsoft не поддерживает это на С# и почему они не упоминают об этом в msdn.

Надеюсь, кто-то может сказать мне причину.

Я могу написать метод расширения, чтобы решить эту проблему, и я могу решить ее довольно легко, но мой вопрос: почему? Почему в С# нет такого метода, я просто хочу знать: -)

4b9b3361

Ответ 1

Поскольку достаточно легко сделать foreach на DirectoryInfo.GetFiles(), а также дать вам возможность фильтровать список копируемых файлов или выполнять другие операции, кроме копирования.

Если это вас действительно беспокоит, напишите метод расширения для класса DirectoryInfo или FileInfo[].

Ответ 2

Я предполагаю, что VB больше ориентируется на новичков, и такие вещи, как Microsoft.VisualBasic.FileIO, были предназначены для привлечения их в мир .NET.