2012-05-14 155 views
2

我試圖通過使用c#將圖像添加到目錄中。我將使用這個圖像在gridview中顯示。我編寫了代碼,但出現錯誤,無法解決。我有一個名爲images的directoy。這是我得到錯誤FileUpload1.SaveAs(Server.MapPath(「images /」+ FileName)。它說C:\ Users \ user \ Documents \ Visual Studio 2008 \ WebSites \ WebSite1 \ images \ im1.jpg'部分。路徑找不到的下面是我的代碼:將圖像保存到目錄c#

string FileName = Path.GetFileName(FileUpload1.PostedFile.FileName); 
FileUpload1.SaveAs(Server.MapPath("images/" + FileName)); 
String strConnString = System.Configuration.ConfigurationManager.ConnectionStrings["conString"].ConnectionString; 
SqlConnection con = new SqlConnection(strConnString); 
string strQuery = "INSERT INTO Books (Book_Name,Author_Name,FileName, FilePath, In_Lib) VALUES (@BN,@AN,@FileName, @FilePath,@LIB)"; 
SqlCommand cmd = new SqlCommand(strQuery); 
cmd.Parameters.AddWithValue("@BN", TextBox1.Text); 
cmd.Parameters.AddWithValue("@AN", TextBox2.Text); 
cmd.Parameters.AddWithValue("@FileName", FileName); 
cmd.Parameters.AddWithValue("@FilePath", "images/" + FileName); 
cmd.Parameters.AddWithValue("@LIB", "YES"); 
cmd.CommandType = CommandType.Text; 
cmd.Connection = con; 
+0

請注意,當您將此上傳到服務器時,您可能必須爲您的應用授予寫入您要保存到的文件夾的權限。 – peroija

回答

2

您試圖保存到一個不存在的目錄

您需要創建的目錄層次結構,然後才能保存它

+0

是的,你是對的。我在我的網站內創建了文件夾,現在它工作得很好 –

0

使用FileUpload1.SaveAs(Server.MapPath("/") + "\\images\\" + FileName);

示例代碼

Server.MapPath(".") returns D:\WebApps\shop\products 
Server.MapPath("..") returns D:\WebApps\shop 
Server.MapPath("~") returns D:\WebApps\shop 
Server.MapPath("/") returns C:\Inetpub\wwwroot 
Server.MapPath("/shop") returns D:\WebApps\shop 
0

也許你的問題在你的道路上。

檢查您的網站中是否有文件夾名稱images

如果嘗試像Server.MapPath("~/images/"+FileName);

也有一個看看這篇文章約ASP.NET Web Project Paths

0
string cntPath = System.IO.Directory.GetCurrentDirectory(); 
FileUpload1.SaveAs(cntPath + "\\images\\" + FileName); 

我做這在我的C#應用​​程序之一,它工作正常的。

相關問題