2011-05-10 43 views
1

我有以下問題:我有一位客戶將在線上傳Excel文件。這個Excel文件將需要導入到數據庫表中,我可以使用openrowset命令執行此操作。一旦它被導入,我可以使用GridView來顯示數據。文件上載在服務器上如何工作?

現在,我已經提到了http://www.codeproject.com/KB/books/ASPNET20FileUpload.aspxhttp://msdn.microsoft.com/en-us/library/aa478971.aspx,但是在它們兩個中,上傳文件夾(目標)都是硬編碼的。我怎樣才能改變這個以反映文件的目的地在服務器上?而且,一旦完成,我該如何使用openrowset來提取Excel的內容?

此外,如何在部署之前模擬機器上的整個過程?

回答

2

您可以將文件存儲在服務器如..

FileUpload1.SaveAs(Server.MapPath("~/temp/xyz.xlsx")); 

然後設置在連接字符串如..

connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Server.MapPath("~/temp/xyz.xlsx"); Extended Properties=Excel 12.0;";

+0

@Muhammad阿赫塔爾:謝謝! :)我猜'〜/ temp/xyz.xlsx'是指文件的物理路徑,還是相反?也就是說,它指的是服務器上的文件夾,該文件已被導向上傳?請賜教,因爲我是新手。謝謝! :) – CodingInCircles 2011-05-10 07:33:49

+1

它將始終將文件保存到您的應用程序的Root/temp目錄中,無論您的應用程序是在本地機器還是在服務器上運行。 〜符號,它會找到根文件夾和Server.mappath,映射到你的絕對路徑。 – 2011-05-10 07:37:51

+0

@Muhammad Akhtar:謝謝你澄清! :)謝謝你的答案。 – CodingInCircles 2011-05-10 09:40:37

相關問題