Я пытаюсь создать обработчик, и я пытаюсь, чтобы он возвращал изображение по умолчанию, когда он возвращает нулевое значение. Но когда я получаю доступ к этому через страницу, используя второй бит кода ниже, я получаю изображение ошибки. Но если я перехожу прямо на страницу Image.ashx? Id = 28 и не существует изображений, я получаю изображение по умолчанию, почему оно не отображается на моей странице? И если изображение существует, оно отображает это изображение на странице и, если оно вызывается напрямую.
Спасибо
Файл My Image.ashx:
public void ProcessRequest(HttpContext ctx)
{
string id = ctx.Request.QueryString["id"];
SqlConnection con = new SqlConnection(CONN INFO);
SqlCommand cmd = new SqlCommand("SELECT EventInviteImage FROM Events WHERE EventID = @EventID", con);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@EventID", id);
byte[] pict = null;
try
{
con.Open();
pict = (byte[])cmd.ExecuteScalar();
ctx.Response.ContentType = "image/pjpeg";
ctx.Response.BinaryWrite(pict);
}
catch
{
ctx.Response.Write("<img src='/images/defaultevent.jpg'>");
}
finally
{
con.Close();
}
}
public bool IsReusable
{
get
{
return true;
}
}
Изображение вызова:
<img src="Image.ashx?id=28" />