jQueryを使用して画像をアップロードしていますが、今までうまくいきました。
画像は保存されますが、2 つの異なるファイル名で 2 回保存されます。ファイル名は から生成されDateTime.Now
ます。アップロード コントロールは、iframe にポストされるフォーム内にあります。
画像を保存するためのコードは次のようになります。
int SaveInt = 0;
using (var m = new MemoryStream())
{
bmp.Save(m, ImageFormat.Png);
var img = Image.FromStream(m);
var ratio = (double)1100 / img.Width;
var newWidth = (int)(img.Width * ratio);
var newHeight = (int)(img.Height * ratio);
var newImage = new Bitmap(newWidth, newHeight);
using (var g = Graphics.FromImage(newImage))
{
g.DrawImage(img, 0, 0, newWidth, newHeight);
}
img = Bloggdesign.Tools.CropImage(newImage, new Rectangle(0, 0, 1100,
500));
if (SaveInt == 0)
{
img.Save(Server.MapPath("~/trashcan/") + NewFilename + ".png");
SaveInt++;
}
}
if (FileToDel != null)
{
File.Delete(Server.MapPath("/trashcan/" + FileToDel + ".png"));
}
変数はテスト用ですが、SaveInt
「if (SaveInt ==0」と追加された数値を使用しても、画像は 2 回保存されますimg.Save()
。の最後の "}" に到達すると、画像が保存されPage_Load
ます。この後、コードは次の行に戻ります。
if (FileToDel != null)
{
File.Delete(Server.MapPath("/trashcan/" + FileToDel + ".png"));
}
ここで 2 番目の画像が保存されます。コードに何か不足していますか? 画像が突然2回保存されるのはとても奇妙です。