2011-06-19 19 views
7

我一直在檢查互聯網,有一個答案在這裏計算器,但它是在vb.net中,我正在使用C#,我如何查詢字符串到ashx的文件在C#

K,這是交易,我有一個二進制圖像存儲在SQL服務器數據庫。我的工作很棒,可以加載它,也可以對它進行修改。在gridview中,我有一個主/細節頁面細節的鏈接。我使用這裏的HTML部分簡單的HTML圖像標記代碼:

我使用VS2010和C#

(displayDetail02.aspx)

<body> 
<form id="form1" runat="server"> 
<div> 
    <img id="Img1" width="500" 
       runat="server" 
       src="~/getLargeImage.ashx?Businessid=<%Eval(businessid)%>" 
       alt="Business Image" 
       style="border: 1px inset"/> 
</div> 
</form> 
</body> 

這裏被後面的代碼:

public partial class displayDetail02 : System.Web.UI.Page 
{ 
    public string businessid = string.Empty; 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!Page.IsPostBack) 
     { 
     businessid = Request.QueryString["businessid"]; 
     } 
    } 
} 

(getLargeImage.ashx)

public partial class getLargeImage : IHttpHandler { 


public void ProcessRequest(HttpContext context) 
{ 
    HttpContext _context = HttpContext.Current; 
    context.Response.ContentType = "image/jpg"; 
    string businessid = Convert.ToString(context.Request.QueryString["businessid"]);  

    ... 

我的問題是查詢字符串變量,我已經嘗試了許多不同的方式來格式化來自displayDetail02.aspx的查詢字符串,但我無法縫以獲得'和'右鍵顯示參數,我不斷收到'<% '這是查詢字符串的第一部分。

我看着它在Mozilla中的螢火蟲和查詢字符串正確通過,但它沒有得到正確處理的ashx文件。

我也在後面的代碼中試過它,比如這裏是我嘗試過的一些代碼。

<% --src='<%# "getLargeImage.ashx?Businessid=" + Eval("Businessid") %>' --%> 

這僅僅是一個代碼行......哦,我知道這個工程,因爲當我硬編碼在ASHX(通用處理器)的參數,我得到的圖像回

可能有人請幫我?

+0

您的問題與您的ASHX無關,但與您的ASPX頁面有關。如果該參數構建正確,您將在您的處理程序中獲得正確的值。 –

回答

4
protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!Page.IsPostBack) 
     { 
     Img1.Src = "~/getLargeImage.ashx?Businessid=" + Request.QueryString["businessid"]; 
     } 
    } 
+0

非常感謝,我知道這只是得到正確的語法,我今天也走了,但我檢查了這段代碼,一切都很好!再次感謝!它總是很簡單! –

10

我使用ASHX這種方式,嘗試用它爲:

context.Request.Params["string"] 
+0

謝謝,這個作品也是! –

0

context.Request.Form["value"]

哪裏value是你傳遞的名稱。