C# 无法发送具有此谓词类型的内容正文

C# 无法发送具有此谓词类型的内容正文,c#,ftp,C#,Ftp,Stream requestStream=request.GetRequestStream();出现错误“无法发送此动词类型的内容正文” 任何关于如何修复此问题的帮助都将非常有用。您已经告诉它使用DownloadFile,这是FTP RETR方法,它不带正文,就像HTTP GET不带正文一样。如果要发送正文,请指定UploadFile(FTP STOR)或类似文件;或者-不要发送正文。您是否尝试过request.Method=WebRequestMethods.Ftp.UploadFile。。。

Stream requestStream=request.GetRequestStream();出现错误“无法发送此动词类型的内容正文”


任何关于如何修复此问题的帮助都将非常有用。

您已经告诉它使用DownloadFile,这是FTP RETR方法,它不带正文,就像HTTP GET不带正文一样。如果要发送正文,请指定UploadFile(FTP STOR)或类似文件;或者-不要发送正文。

您是否尝试过request.Method=WebRequestMethods.Ftp.UploadFile。。。
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.MySite.com/public_html/Text.txt");
    request.Method = WebRequestMethods.Ftp.DownloadFile;

    request.Credentials = new NetworkCredential(" ", " ");

    StreamReader sourceStream = new StreamReader(Environment.CurrentDirectory + "/Text.txt");
    byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
    sourceStream.Close();
    request.ContentLength = fileContents.Length;

    Stream requestStream = request.GetRequestStream();
    requestStream.Write(fileContents, 0, fileContents.Length);
    requestStream.Close();

    FtpWebResponse response = (FtpWebResponse)request.GetResponse();
    response.Close();