2014-09-26 79 views
0

我現在的儲蓄與FileUpload1.SaveAs(Server.MapPath(path)圖片的URL和我初始化路徑變量:刪除「〜/」從第一個SqlDataReader對象

path = "~/Persian/slideshow/pictures/" + FileUpload1.FileName; 

我必須添加「〜/」,因爲插入到解決方案,因此插入到數據庫我需要這樣做。我的問題是,當我想從數據庫中讀取此映射路徑並創建映像標記時,我無法從對象中刪除'〜/'部分。這裏是我的代碼:

dataReader = command.ExecuteReader(); 
imageList = ""; 
while (dataReader.Read()) 
{ 
    url = dataReader["PhotoUrl"].ToString(); 
    url = url.Substring(2, url.Length - 2); 
    imageList += "{ image: '" + url + "', title: '" + dataReader["PhotoTitle"] + "', thumb: '" + dataReader["PhotoUrl"] + "', url: '" + dataReader["PhotoUrl"] + "' },"; 
} 

這裏的問題是我不能使用字符串相關函數來糾正路徑。 我能做什麼?

非常感謝你;)

+0

你想讓url在JSON中看起來像什麼?子字符串的工作原理是 – 2014-09-26 18:46:03

+0

。它看起來像在ImageList中重用dataReader [「PhotoUrl」]並應該使用url變量。如果這不是問題,你可以顯示imageList包含什麼和你在找什麼? – 2014-09-26 18:49:31

+0

No只是我想從url的第一個URL中刪除〜/,這個URL是使用FileUpload1.SaveAs(Server.MapPath(path))添加的。問題是當我從數據庫中讀取這個字段時,它不是一個字符串。所以我不能這樣做 – user3159964 2014-09-26 18:51:25

回答

0

所以上面的代碼是完全真實的。我的問題是我刪除了/從url開頭。

path = "~/Persian/slideshow/pictures/" + FileUpload1.FileName; 
dataReader = command.ExecuteReader(); 
      imageList = ""; 
      while (dataReader.Read()) 
      { 
       url = dataReader["PhotoUrl"].ToString(); 
       url = url.Substring(1); 
       imageList += "{ image: '" + url + "', title: '" + dataReader["PhotoTitle"] + "', thumb: '" + dataReader["PhotoUrl"] + "', url: '" + dataReader["PhotoUrl"] + "' },"; 
      } 
0

如果您路徑保存在DB爲「〜/波斯/幻燈片播放/圖片/ aa.gif」,你想擁有「/Persian/slideshow/pictures/aa.gif」在你的代碼,你可以使用.ToString()和子串來獲得這個。

string dbpath = "~/Persian/slideshow/pictures/aa.gif" ; // actual dbpath will be DataReaderObj["path"].ToString(); 
    string newpath = dbpath.Substring(1, dbpath.Length - 1); // this will remove ~ only 
    string newpath = dbpath.Substring(2, dbpath.Length - 2); // to remove ~/ 

在while循環中使用上面的行來獲取所需的文件路徑。

+0

是啊!這就是答案;) – user3159964 2014-09-29 05:50:36