2014-07-07 40 views
0

我想在ASHX文件的幫助下將數據從數據庫顯示到中繼器控制中。 我是初學者到ASP.net。如果您可以提供任何代碼示例,這將非常有幫助。從數據庫中獲取圖像到ASHX文件並顯示到中繼器

編輯,從評論

我試圖從數據庫中獲得的圖像到中繼器控制。

這是我在aspx.cs做文件

cnn.Open(); 
SqlDataAdapter da1 = new SqlDataAdapter("select * from carousel", cnn); 
DataTable dt1 = new DataTable(); da1.Fill(dt1); 
Rp1.DataSource = dt1; 
Rp1.DataBind(); 

這是我Repaeter

<asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("ID")%>'/> 

但我在成績獲得src="system.Byte"

我知道這是因爲來自數據庫的值是一個代表圖像實際數據的字節數組。所以我想知道關於ASHX

+0

你能解釋一下你已經試過的嗎?還有關於它如何不起作用的補充評論? – brazilianldsjaguar

+0

我想從數據庫中獲取圖像到中繼器控制 這是我在aspx.cs文件中做的 cnn.Open(); SqlDataAdapter da1 =新的SqlDataAdapter(「select * from carousel」,cnn); DataTable dt1 = new DataTable(); da1.Fill(dt1); Rp1.DataSource = dt1; Rp1.DataBind(); 這是我的Repaeter 的 但我正在逐漸SRC =「系統。字節「。 我知道這是因爲來自數據庫的值是一個代表圖像實際數據的字節數組。 所以我想知道abht ASHX – Moiz

+0

我把你的評論作爲代碼到你的問題 - 這樣我們可以看到它的格式有用的方式。感謝您提供這些好的信息! – brazilianldsjaguar

回答

1

我在評論中提到的問題有一些很好的例子,說明如何將圖像放到您的網站上。 This is the question我正在參考。

特別是,this answer顯示了您需要使用的方法的一個非常好的示例。基本上,因爲您將圖像作爲數據庫中的字節數組(例如,它是自己的實際圖像,而不是參考),所以您需要使用略有不同的圖像方法而不是使用ImgUrl屬性的<asp:Image/>標記。

在總結,你會做這樣的事情(參考從對方的回答):

創建像這樣一個普通的HTML img元素:

<img runat="server" id="image" /> 

而且在後面的代碼做到這一點:

image.src="data:image/png;base64,"+Convert.ToBase64String(imageBytes); 

凡imageBytes是byte[]

+0

你能告訴我如何通過修改我的代碼來做到這一點 '' – Moiz

+0

我不知道那是什麼「並在代碼後面這樣做:」意味着 我把'' 在中繼器,但我得到一個錯誤,說:「元素img缺少必要attriute src」 – Moiz

+0

所以我認爲你的情況有點複雜。在一個處理程序中,您將調用一個數據庫並使用數據表填充一箇中繼器。這個答案是迎合'一次性',在​​'DataTable'上下文之外。 – brazilianldsjaguar

相關問題