在使用标题中的库解决此问题时,我已经看到了许多示例。我看到应该工作的常见示例是:
string destinationPath = PathInfo.FileNameConvention;
using (FileStream fileStream = File.OpenRead(sourcePath))
{
using (Stream ftpStream = FTPClient.OpenWrite(string.Format("'{0}'", destinationPath), FtpDataType.ASCII))
{
fileStream.CopyTo(ftpStream);
}
}
当我执行此代码时,我在 ftpTrace 日志中收到名称长度错误。当我仅使用目标路径时,出现超时错误。我正在发送到大型机 MVS 操作系统。我可以正常连接并登录。能够通过 ftpclient.execute 方法提交站点命令。出于好奇,我也尝试通过 execute 方法提交一个 put 命令,并得到了未知的 put 命令。有人也有这个问题吗?
此外,连接工作正常,因为我已通过 cmd 提示符 ftp 手动提交文件并成功。
一些背景信息,库的 OpenWrite 方法使用发送的路径发送 STOR 命令,并将默认为二进制类型。