Каким будет тип возврата следующего метода? (T
)Тип данных дерева каталогов?
public T GetDirectoryContentsRecursively (string path) { ... }
метод будет читать содержимое удаленного каталога, и прочитать содержимое каждой поддиректории и каждый из подкаталогов этого объекта и так далее.
Я думал об использовании List<object>
, где object
может быть другой List<object>
и т.д ... но я не хочу, вызывающие должен быть литьем все в FileSystemInfo
сек каждый раз, когда они хотят использовать этот метод.
Каждый файл должен быть FileInfo
и каждый каталог a DirectoryInfo
, оба из которых наследуют абстрактный класс FileSystemInfo
.
Я просто не могу понять, какой тип данных лучше всего использовать для представления этого.
Любые идеи? Нужно ли мне создавать свой собственный тип DirectoryTree
?
Редактировать: Данные должны быть получены с сервера, возможно, по каталогу, по одному. Что мне нужно сделать, это взять эти данные и восстановить его в что-то, которое я могу передать пользователю. Это означает, что я не могу просто передать DirectoryInfo
, а затем вызвать его GetFileSystemInfos()
, потому что Directory не будет существовать на локальной машине.
Я не могу просто вернуть 'IEnumerable', потому что я хочу передавать другую информацию, такую как размер каждого файла, когда он был изменен и т. Д. Возможно, вы правы со своим вторым абзацем и что я не знаю, Мне нужен этот метод вообще. У меня уже есть 'public IEnumerable GetDirectoryContents (строковый путь)'. –
Nobody
Я предполагаю, что я думал, что когда у вас есть список путей к файлам, вы можете использовать API-интерфейсы «Файл» и «Каталог» для поиска размера и информации об атрибутах по мере необходимости. Опять же, это зависит от цели. – TheCodeKing