Быстрый запрос для получения двоичного изображения на Image Load? - PullRequest
0 голосов
/ 21 сентября 2010

Есть ли такая вещь?!

Так, например, при загрузке моего изображения я подключил следующую таблицу к таблице, где «Изображение» - это двоичный набор данных изображения.

protected void Image1_Load1(object sender, EventArgs e)
    {
         myent logo = new myent();

        var query = (from p in logo.tblLogoes
                    where p.Id == id && p.Id2 == id2
                    select p.Image).First();

        return query.  
    }

Что мне нужно вернуть сюда, чтобы заполнить изображение?

У меня странное чувство, все будет не так просто!

Любые указатели с благодарностью получены.

1 Ответ

0 голосов
/ 21 сентября 2010

Я бы создал Http Handler для этого.Некоторые браузеры поддерживают запись двоичных изображений в разметке, но это нестандартно, поэтому я рекомендую против этого.

Если вы можете получить байты из своего запроса, сделайте что-то вроде этого:

Затем создайте обработчик.

public class IISHandler : IHttpHandler
{
    public bool IsReusable
    {
        get { return true; }
    }

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "image/jpeg";
        myent logo = new myent();

        var query = (from p in logo.tblLogoes
                    where p.Id == id && p.Id2 == id2
                    select p.Image).First();
        byte[] bytes = query.bytes;
        context.Response.OutputStream.Write( bytes, 0, bytes.Length);
    }
}

Зарегистрируйте дескриптор:

<system.web>
<httpHandlers>
    <!-- ImageHandler handlers -->
    <add verb="*" path="myimages/*.jpg" type="namespace.IISHandler, namespace" />
</httpHandlers>

...

На вашей веб-странице пусть тег <img> указывает на обработчик.

<img src="myimages/someimage.jpg">

Ваш код мало показывает, как вы нацеливаетесь на изображения, идентификаторы, имена?Скорее всего, вы хотите передать некоторый идентификатор обработчику, чтобы вы могли получить правильное изображение.

Взгляните на http://msdn.microsoft.com/en-us/library/ms972953.aspx, чтобы получить более подробный пример обработки динамического контента с помощьюобработчики http.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...