Проблема с назначением URL-адреса тегу изображения и отображением изображения - PullRequest
0 голосов
/ 09 мая 2020

У меня есть тег img , и я хочу получить изображение по URL-адресу и отобразить в нем. Этот URL-адрес указывает страницу ASPX , на которой я получаю изображение из базы данных. FormLoad и вернуть это изображение. Проблема в том, что метод страницы FormLoad не вызывается. Я должен сказать, я получаю изображение из базы данных с помощью сервера ссылок.

Этот код является моим назначением URL:

imgManager.ImageUrl = "~/Portals/AbsencePresent/Form/SignForm.aspx?ManagerId=" + 
managerObject.Id.ToString();

Я не получаю ошибки в этой строке кода и приложение работает нормально. Я пытаюсь скопировать этот URL-адрес в браузере вручную, но ничего не произошло.

не могли бы вы мне помочь?

ОБНОВЛЕНИЕ 1

Вот SignForm. aspx:

public partial class SignForm : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.QueryString["ManagerId"] != null)
            {
                DataTable dt = AbsencePresent.BusinessObjects.Helper.GetSign(Request.QueryString["ManagerId"]);
                if (dt != null && dt.Rows.Count > 0)
                {
                    string signFileName = dt.Rows[0]["Name"].ToString();
                    //string extension = System.IO.Path.GetExtension(signFileName).ToLower();
                    Byte[] bytes = (Byte[])dt.Rows[0]["SrcFile"];
                    string imageFormat = AbsencePresent.BusinessObjects.Helper.GetContentType(bytes).ToString().ToLower();
                    string contentType = string.Empty;
                    if (imageFormat == "bmp")
                        contentType = "image/bmp";
                    else if (imageFormat == "jpeg")
                        contentType = "image/jpeg";
                    else if (imageFormat == "jpg")
                        contentType = "image/jpeg";
                    else if (imageFormat == "gif")
                        contentType = "image/gif";
                    else if (imageFormat == "png")
                        contentType = "image/png";
                    else if (imageFormat == "tiff")
                        contentType = "image/tiff";

                    Response.Buffer = true;
                    Response.Charset = "";
                    Response.Cache.SetCacheability(HttpCacheability.NoCache);
                    Response.ContentType = contentType;
                    Response.AddHeader("content-disposition", "attachment;filename=" + signFileName);
                    Response.BinaryWrite(bytes);
                    Response.Flush();
                    Response.End();
                }
            }
        }
    }
...