2011-05-13 55 views
1

我正在嘗試創建一個可以讓用戶搜索圖像的網站。 我爲圖像創建了一個本地數據庫(一個包含少量圖像的文件夾),數據有三列:title,picURL和keyword。從URL使用C#編寫的網站中的顯示圖像

在我的默認頁面上,我設置了一個文本框和搜索按鈕。我做的是:

string query = "SELECT picURL FROM imagedatabase WHERE [keyword] = '" + keyword + "'"; 

[關鍵字]是列的名稱之一,關鍵字是文本框中的一個用戶類型。

所以,現在如果我在數據庫中找到圖像,那麼我得到了它的URL。但是,我如何在.aspx中顯示圖像?像他們是否有任何特定的命令或我可以做什麼來顯示圖像?

感謝


編輯:

所以我改變了這樣的代碼:

在我homepage.aspx,我在此補充說:

<asp:Image ID="Image1" runat="server" ImageUrl="Image1.ImageUrl" /> 

和我的homepage.aspx.cs,我寫到:

protected void btnImageSearch_Click(object sender, EventArgs e) 
{ 
    ImageSearch(); 
} 
private void ImageSearch() 
{ 
    string ImageURL; 
    ImageURL= Process.KeywordSearch(txtSearch.Text); 
    Image1.ImageUrl = ImageURL; 

} 

,並在我的Process.cs,我寫了這個:

public static string KeywordSearch(string keyword) 
{ 
    string query = "SELECT imagepath FROM tbimage WHERE [title] = '" + keyword + "'";  

    return query; 

} 

我寫的這一切後,我試着調試。我輸入了關鍵字,但沒有出現圖像。 我知道在Process.cs中,查詢將獲得數據庫中的URL(URL類似於C:\ ....) 因此Image1.ImageUrl應該等於該URL。但後來我想知道如果

可以在此真正得到Image1.ImageUrl?因爲沒有圖像出現。

希望有人可以幫助和感謝

回答

3

爲此,你可以使用Image控制asp.net和其ImageUrl屬性設置爲圖像的URL。像這樣

<asp:Image ID="Image1" runat="server" /> 

和代碼隱藏

Image1.ImageUrl = query; 

不要如下

1保存或將您的圖像放入一個文件夾 。
2將此文件夾添加到您的解決方案或項目的 中。
3從數據庫中取 圖像名稱(不是物理路徑) 。
4設置 將ImageUrl屬性設置爲虛擬路徑。

+0

嘿,我跟着你說什麼,並得到了一個問題。我編輯了這篇文章,以提供更多信息我有什麼問題。非常感謝 –

+0

@Ric:刪除ImageUrl =「Image1.ImageUrl」這是錯誤的看到我更新的答案,然後嘗試讓我知道。 – jams

+0

您正在使用的物理路徑還有一件事,但圖像控制只採用虛擬路徑。 – jams