请注意,下面描述的问题是 Fedora 上的 Mono。我从 Visual Studio 测试了相同的代码,它的行为完全符合预期。这是 Mono 中的错误吗?
在浏览器中,我可以转到ftp://10.32.70.50/docs
输入用户名/密码后,我可以列出 ~username/docs 的内容
我的 ftp 客户端软件将读取ftp://10.32.70.50//
我的登录的根目录 ( ) 或顶级目录,而不管 ip ( ftp://10.32.70.50/docs
) 后面的相对路径如何。
List<string> dirlist = new List<string>();
Uri testuri = new Uri(@"ftp://10.32.70.50:21/doc");
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(testuri);
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.Credentials = new NetworkCredential("username", "password");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
while (reader.Peek() >= 0)
{
dirlist.Add((reader.ReadLine()));
}
如何让我的代码使用附加在 URI 中的路径?