私は、クライアントが www.site1.com から画像をアップロードし、画像の URL をデータベースに保存し、画像を www.site2.com/images のファイルに保存できるようにする機能の構築に取り組んできました。ファイルを目的の場所にアップロードできましたが、画像を開いて表示しようとすると、エラーが含まれていると言われます。私は実際に画像を扱う必要がなかったので、途方に暮れています。
これは、ファイルのアップロードに使用される方法です。
public static void UpLoadImage(Stream image, string target)
{
FtpWebRequest req = (FtpWebRequest)WebRequest.Create("ftp://www.site2.com/images/" + target);
req.UseBinary = true;
req.Method = WebRequestMethods.Ftp.UploadFile;
req.Credentials = new NetworkCredential("myUser", "myPass");
StreamReader rdr = new StreamReader(image);
byte[] fileData = Encoding.UTF8.GetBytes(rdr.ReadToEnd());
rdr.Close();
req.ContentLength = fileData.Length;
Stream reqStream = req.GetRequestStream();
reqStream.Write(fileData, 0, fileData.Length);
reqStream.Close();
}
これは、メソッドが呼び出される場所です (image1 は HttpPostedFileBase です)。
myObject.UpLoadImage(image1.InputStream, storedTL.ID + "-1.png");
このコードを機能させる方法がある場合、またはこれを行うためのより良い方法がある場合は、助けてください。