сохранение изображения в переменную сеанса

#c# #asp.net

#c# #asp.net

Вопрос:

Я загрузил изображение и добавил URL (uploadedImage.Имя файла) в базу данных. Затем я привязал gridview к базе данных и установил в поле DataImageUrl значение для столбца PictureUrl базы данных, в которую загружено изображение.Имя файла было сохранено, и поэтому изображение отображается в gridview (все еще возникают проблемы с контролем размера).

Я просто хотел бы знать, как добавить эту информацию об изображении в переменную сеанса, чтобы ее можно было отобразить на другой странице. это то, что я делал до сих пор (я также добавил session[«title»], который прост, поскольку он отображает только текстовое значение на другой странице).

if (например,имякоманды == «addToSession») {

         //get the row index stored in the CommandArgument property
        int index = Convert.ToInt32(e.CommandArgument);

        //get the gridview row where the command is raised
        GridViewRow selectedRow = ((GridView)e.CommandSource).Rows[index];

        //values stored in the text propert of the cells
        string title = selectedRow.Cells[1].Text;
        string pictureUrl = selectedRow.Cells[3].Text; ???????            
        //set the sesion variable ["Title"] to the title          
        Session["Title"] = title;

        //this is where i am experiencing some problems
        Session["ImageID"] = pictureUrl; ???????
        Response.Redirect("RateBook.aspx");
    }
  

Может быть, мне следует добавить кнопку изображения на другой странице и попытаться привязать ее к ImageField в gridview?

с уважением

Ответ №1:

Взглянули на строку сеанса? Я никогда не использовал сетку, но я думаю, что вы не можете сделать это таким образом… Я думаю, что grid передаст вам изображение из базы данных. Чтобы получить доступ к тому же изображению позже без повторного запроса к базе данных, вам нужно будет сохранить все изображение, а не только ссылку, которая больше не действительна в сеансе (как строка base64 или base128) и предоставить URL, который передает изображение обратно.

Ответ №2:

почему бы не использовать переменную сеанса для сохранения URL-адреса изображения на вашем сервере? Если вам нужно его отобразить, просто используйте:

 <img src=<%= Session["ImageID"]  %>>