我为需要执行FTP命令的预定系统创建了一个模块。
我们尝试连接的ftp主机只是一个IP地址。即下面
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("10.1.1.1");
尝试执行此操作时,它抱怨无法定义连接类型,以ftp://为前缀可以很好,但是由于该主机不存在,它无法解析。我无法更改为主机的主机头。
有什么方法可以将Uri定义为FTP地址而不在地址中包含它?似乎方便的枚举将其标识为ftp或http等是理想的选择。
还是有另一种方法可以连接到我尚未找到的FTP站点?
TIA
最佳答案
为什么不能简单地在地址中添加ftp://
?
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://10.1.1.1");
WebRequest
需要协议信息才能知道要创建哪种WebRequest
实现(WebRequest
是由HttpWebRequest
和FtpWebRequest
实现的抽象类)。