對,所以我通過Scheme代碼將信息從數據庫中提取出來,並將其顯示在網絡表單上,可以在其中修改或創建新記錄。 獲取圖像我創建了一個通用處理程序作爲一種虛擬地址。將參數傳遞到通用處理程序
我在通過dropdownlist.selectedItem.Text
(這是您選擇所需記錄的計劃代碼的位置)值時遇到了一些問題,並將其添加到通用處理程序中的參數中。我可以直接傳入一個字符串,然後只需選擇特定的Scheme代碼,它就可以工作。
這是SQL命令代碼
public static TemplateData ReturnData(string schemeCode)
{
string sqlInstructionCstmID = "SELECT TOP(1) LetterTemplateCustomisationId, TemplateId, Logo, SchemeCode, Version, Comment FROM LetterTemplateCustomisation WHERE SchemeCode ='" + schemeCode + "'";
string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["LettersDatabase"].ConnectionString;
SqlConnection connect = new SqlConnection(connectionString);
SqlCommand command = new SqlCommand(sqlInstructionCstmID, connect);
command.CommandType = CommandType.Text;
connect.Open();
SqlDataReader dr = command.ExecuteReader();
TemplateData tempData = null;
if (dr.HasRows)
{
dr.Read();
tempData = new TemplateData(dr);
}
dr.Close();
connect.Close();
return tempData;
}
通用處理器...與空參數
public class ImageHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
TemplateData imgData = DataClass.ReturnData();
if (imgData != null)
{
context.Response.ContentType = "image/jpeg";
context.Response.BinaryWrite(imgData.Logo);
context.Response.OutputStream.Write(imgData.Logo, 0, imgData.Logo.Length);
context.Response.Flush();
}
}
,這背後是
protected void btnSearch_Click(object sender, EventArgs e)
{
if (ddSchemeCode.SelectedIndex > 0)
{
// Existing Data to load from database
TemplateData temp = DataClass.ReturnData(ddSchemeCode.SelectedItem.Text);
if (temp != null)
{
txtVersion.Text = temp.Version;
txtComment.Text = temp.Comment;
txtSchemeCode.Text = temp.SchemeCode;
txtTemplateId.Text = temp.TemplateId;
imgLogo.ImageUrl = "ImageHandler.ashx"
}
}
的代碼,所以它的TemplateData imgData = DataClass.ReturnData();
中的空參數我遇到困難了。
像往常一樣,非常感謝提前的人!
好吧,參數化查詢,我會查找它們,歡呼。 我想'ddSchemeCode.SelectedItem.Text'到這些參數,或'temp.SchemeCode'什麼的,但我不知道如何傳遞它。 – Bigtingz92
如果你想傳入處理程序,你應該通過URL傳遞它。 –
好的,很酷。所以會是這樣的: 'imgLogo.ImageUrl =(「ImageHandler.ashx?schemeCode = {0}」,ddSchemeCode.SelectedItem.Text);' – Bigtingz92