【发布时间】:2015-05-06 08:54:13
【问题描述】:
我有一个递归函数:
class FtpFolder{
public void ListChildren(IFolder folder)
{
Uri uri = new Uri("ftp://127.0.0.1/");
FtpClient ftpClient = new FtpClient();
ftpClient.Host = uri.Host;
ftpClient.Credentials = new NetworkCredential("UserLocal", "1234");
ftpClient.SetWorkingDirectory(folder.FullName);
foreach (FtpListItem item in ftpClient.GetListing(ftpClient.GetWorkingDirectory(), FtpListOption.Modify | FtpListOption.Size))
{
switch (item.Type)
{
case FtpFileSystemObjectType.Directory:
FtpFolder ftpSubFolder = new FtpFolder(item);
folder.Folders.Add(ftpSubFolder);
ListChildren(ftpSubFolder);
break;
case FtpFileSystemObjectType.File:
folder.Files.Add(new FtpFile() { Item = item });
break;
}
}
}
}
这是我的班级联系
class Connection{
private uri Uri;
private string Username;
private string Password
public connection(uri _uri, string _username, _password){
_uri=Uri; _username=Username; _password=Password;
}
public void connect(){
}
}
我使用这个递归函数来列出来自 FTP 服务器的所有文件。我的问题是我可以重复使用 FtpClient 的单个实例,这样我就不需要继续重新创建一个新实例了吗?
【问题讨论】:
-
我已经改写了你的问题,我 99% 确定这是你的意思,但请检查这是正确的解释。
-
是的,这就是我的意思
标签: c# ftp ftp-client