2011-06-06 59 views
2

我想使用Ajax-Upload腳本上傳多張圖片。踢球者是我使用Asp.net webforms,我一直在做Ajax的方式一直有一個簡單的頁面Web方法就像這樣。Asp.net Webforms使用Ajax上傳文件 - 上傳

[WebMethod()] 
public static string Method(string param) 
{ 
    return "Hello World"; 
} 

我遇到麻煩了解如何上傳圖像而不使用webforms FileUpload控件,以便我可以異步上傳文件。我必須使用錯誤的搜索條件,因爲我找不到另一個在webforms中進行此操作的例子。

編輯:爲了更具體我正在尋找服務器端的幫助。我鏈接的插件處理所有客戶端的東西。我目前正在考慮編寫一個客戶處理程序...我希望避免使用更新面板控件(如AjaxToolkit),只要堅持插件,如果可能的話。

+0

你的問題是什麼? – 2011-06-06 18:01:07

+0

我注意到這是你的第一個問題。如果你自己解決這個問題,你應該發佈你的更新作爲答案並接受它。如果其中一個答案幫助您解決了問題,您應該接受該答案並/或提出任何其他有幫助的答案。 – 2011-06-10 17:35:43

+1

@Justin Satyr對此感到抱歉,沒有一個答案真的有幫助,我會發布我的答案並接受它。謝謝您的幫助。 – peregrine 2011-06-15 19:55:11

回答

0

答:

我所做的就是寫了一個圖像上載處理程序腳本,這是非常基本的,但它應該完成這項工作。這裏是。

public void ProcessRequest(HttpContext context) 
    { 
     string uploadDir = "C:\\Upload"; 
     try 
     { 
      Image i = Image.FromStream(context.Request.InputStream); 
      string filename = context.Request.Params["qqfile"]; 

      if (i.RawFormat.Equals(ImageFormat.Png)) 
      { 
       i.Save(uploadDir + "\\" + filename, ImageFormat.Png); 
      } 
      else if (i.RawFormat.Equals(ImageFormat.Jpeg)) 
      { 
       i.Save(uploadDir + "\\" + filename, ImageFormat.Jpeg); 
      } 
      else if (i.RawFormat.Equals(ImageFormat.Gif)) 
      { 
       i.Save(uploadDir + "\\" + filename, ImageFormat.Gif); 
      } 
      else if (i.RawFormat.Equals(ImageFormat.Bmp)) 
      { 
       i.Save(uploadDir + "\\" + filename, ImageFormat.Bmp); 
      } 
     } 
     catch (Exception e) 
     { 
      context.Response.Write("{'error':'"+e.Message+"'}"); 
     } 

     context.Response.Write("{'success':true}"); 
    } 

這個工作與我之前鏈接到的Ajax上傳腳本有關。謝謝