我正在使用ASP.Net MVC 4和WebImage帮助器。我需要通过FTP上传我的WebImage对象。我只是不知道如何获取WebImage参数以发送到我的RequestStream.Write

这是一些代码...

        WebImage photo = WebImage.GetImageFromRequest();
        string fileName = System.IO.Path.GetFileName(photo.FileName);

        FtpWebRequest request = (FtpWebRequest)WebRequest.Create(FTPaddress +"/images/" + fileName);
        request.Method = WebRequestMethods.Ftp.UploadFile;
        request.Credentials = new NetworkCredential("****", "*****");
        request.UsePassive = true;

        request.ContentLength = ???????;

        byte[] buffer = ????????; //It's not photo.GetBytes;

        Stream requestStream = request.GetRequestStream();
        requestStream.Write(buffer, 0, request.ContentLength);
        requestStream.Close();

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

        response.Close();


之后我是否可以将photo.Save()用作FTP路径?

最佳答案

byte [] fileContents = photo.GetBytes();
request.ContentLength = fileContents.Length;

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


这就是你的做法,愚蠢的我。

08-03 14:41