<PackageReference Include="Relativity.Transfer.Client" Version="7.0.11" />

FolderItemCollection

using System; using System.Collections; using System.Collections.Generic; using System.IO; namespace Relativity.Transfer { public class FolderItemCollection : IEnumerable<FolderItem>, IEnumerable { private readonly IEnumerable<DirectoryInfo> folderItemsToEnumerate; public FolderItemCollection(IEnumerable<DirectoryInfo> directoryInfos) { if (directoryInfos == null) throw new ArgumentNullException("directoryInfos"); folderItemsToEnumerate = directoryInfos; } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } public IEnumerator<FolderItem> GetEnumerator() { foreach (DirectoryInfo item in folderItemsToEnumerate) { yield return new FolderItem { FullName = PathHelper.ForceRemoveLongPathPrefix(item.FullName), Name = item.Name, Parent = (PathHelper.ForceRemoveLongPathPrefix(item.Parent?.FullName) ?? string.Empty) }; } } } }