2013-01-31 57 views
0

它將圖像保存到本地目錄或根本不保存圖像。 它不會給我任何錯誤。 據我所知,我的本地驅動器和主機之間沒有任何關係。我的所有頁面都在主機上,並且工作正常。但是在創建這個頁面之前,我將bin目錄文件(AjaxControlToolkit.dll,Site.dll,site.pdb)從我的本地主機導入到web服務器。AjaxFileUpload將圖像保存到本地目錄而不是服務器目錄

源文件:

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolderIcerik" runat="server"> 
    <asp:ToolkitScriptManager runat="server"></asp:ToolkitScriptManager> 

    <asp:AjaxFileUpload ID="AjaxFileUploadResimEkle" runat="server" 
    AllowedFileTypes="jpg,jpeg" 
    onuploadcomplete="AjaxFileUploadResimEkle_UploadComplete" /> 
</asp:Content 

>

代碼隱藏:

protected void AjaxFileUploadResimEkle_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e) 
     { 
      int PostID = Convert.ToInt32(Request.QueryString["PostID"]); 
      var makale = (from p in db.Posts 
         where p.PostID == PostID 
         select new { p.PostID, p.Title }).Single(); 

      string uzanti = Path.GetExtension(e.FileName); 
      if (e.ContentType.Contains("image")) 
      { 
      if (e.FileSize <41943040) 
      { 
       Guid benzersiz = Guid.NewGuid(); 

       string filePath =string.Format("~/images/blog/large_image/{0}_{1}{2}", makale.Title, benzersiz,uzanti); 

       AjaxFileUploadResimEkle.SaveAs(Server.MapPath(filePath)); 

       System.Drawing.Image degisecekResim = System.Drawing.Image.FromFile(filePath)); 

       Bitmap kucukResim = ResimKucult(degisecekResim); 
       string kucukResimYolu = string.Format("~/images/blog/medium_image/{0}_{1}{2}", makale.Title, benzersiz,uzanti); 
       kucukResim.Save(Server.MapPath(kucukResimYolu)); 

       Resimler resim = new Resimler(); 

       resim.PostID = PostID; 
       resim.FileName = filePath; 
       resim.SmallFileName = kucukResimYolu; 
       resim.IsActive = true; 
       db.Resimlers.AddObject(resim); 
       db.SaveChanges(); 

      } 
      } 
     } 

    Bitmap ResimKucult(System.Drawing.Image resim) 
    { 
     int x = 225; 
     int y = 165; 

     Bitmap bmpOrji = new Bitmap(resim); 
     if (bmpOrji.Width > bmpOrji.Height) 
     { 
     y = bmpOrji.Height * x/bmpOrji.Width; 
     } 
     else if (bmpOrji.Height > bmpOrji.Width) 
     { 
     x = bmpOrji.Width * y/bmpOrji.Height; 
     } 

     Bitmap yeniBmp = new Bitmap(bmpOrji, x, y); 

     return yeniBmp; 
    } 

    } 

回答

0

的問題是在在domainhost文件夾選項。當我給文件夾寫入權限問題解決了。

我不知道我的主機有那種文件夾選項系統,默認情況下所有的文件夾都是隻讀的。

在弄亂你的asp頁面之前,最好先檢查一下主機。

相關問題