Iam在ASP.NET中開發網站時很新穎,或者僅僅是一般的網站。錯誤:「無法找到路徑的一部分」
我編寫了一個網站,它在Localhost上工作得很好,但是當我把它放到網上時,當我嘗試上傳文件時出現此錯誤。
代碼:
FileUpload_Billede.SaveAs(Server.MapPath("~/img/upload/") + FileUpload_Billede.FileName);
MakeThumb(FileUpload_Billede.FileName, "img/upload/", 295, "/img/sponsor/");
我已經把其他網站還是在同webhotel,我也用的FileUpload,尚未出現任何錯誤。
我在網上看了很多說它是IIS導致問題。我從來沒有碰過IIS,這就是爲什麼我不明白爲什麼現在會有問題呢?在這種情況下,我不知道如何在IIS管理器程序中執行操作。我希望有人能幫助我,因爲我完全迷失了。
讓我知道你是否需要更多的信息。
編輯:我被要求編寫MakeThumb方法的定義。那就是:
private void MakeThumb(string Filename, string UploadFolder, int bredde, string thumbuploadfolder)
{
// Kompliceret Kode fundet fra nettet om upload og skalering af billede.
// find det uploadede image
System.Drawing.Image OriginalImg = System.Drawing.Image.FromFile(Server.MapPath("~/") + UploadFolder + Filename);
// find højde og bredde på image
int originalWidth = OriginalImg.Width;
int originalHeight = OriginalImg.Height;
// bestem den nye bredde på det thumbnail som skal laves
int newWidth = bredde;
// beregn den nye højde på thumbnailbilledet
double ratio = newWidth/(double)originalWidth;
int newHeight = Convert.ToInt32(ratio * originalHeight);
Bitmap Thumb = new Bitmap(newWidth, newHeight, PixelFormat.Format24bppRgb);
Thumb.SetResolution(OriginalImg.HorizontalResolution, OriginalImg.VerticalResolution);
// Hvis billedet indeholder nogen form for transperans
//(mere eller mindre gennemsigtig, eller en gennemsigtig baggrund) bliver det gjort her
Thumb.MakeTransparent();
// opret det nye billede
Graphics ThumbMaker = Graphics.FromImage(Thumb);
ThumbMaker.InterpolationMode = InterpolationMode.HighQualityBicubic;
ThumbMaker.DrawImage(OriginalImg,
new Rectangle(0, 0, newWidth, newHeight),
new Rectangle(0, 0, originalWidth, originalHeight),
GraphicsUnit.Pixel);
// encoding
ImageCodecInfo encoder;
string fileExt = System.IO.Path.GetExtension(Filename);
switch (fileExt)
{
case ".png":
encoder = GetEncoderInfo("image/png");
break;
case ".gif":
encoder = GetEncoderInfo("image/gif");
break;
default:
// default til JPG
encoder = GetEncoderInfo("image/jpeg");
break;
}
EncoderParameters encoderParameters = new EncoderParameters(1);
encoderParameters.Param[0] = new EncoderParameter(Encoder.Quality, 100L);
// gem thumbnail i mappen /Images/Uploads/Thumbs/
Thumb.Save(Server.MapPath("~") + thumbuploadfolder + Filename, encoder, encoderParameters);
// Fjern originalbilledet, thumbnail mm, fra computerhukommelsen
OriginalImg.Dispose();
ThumbMaker.Dispose();
Thumb.Dispose();
}
請張貼另存爲和MakeThumb函數定義。 –
SaveAs是默認定義的,不是由我定義的。我發佈了MakeThumb的定義。 – Vexityy
在'FileUpload_Billede.SaveAs(Server.MapPath(「〜/ img/upload /」)+ FileUpload_Billede.FileName)中放置一個斷點;'看看路徑是什麼 – Izzy