Проблемы .ashx с типом изображения Gif - PullRequest
1 голос
/ 05 декабря 2011

Я пытаюсь создать страницу Ashx, которая возвращает изображение в зависимости от идентификатора.Я только собираюсь поддерживать JPEG, PNG и GIF.Jpeg и png работают нормально, но gif-файлы доставляют мне неприятности.

Моя проблема в том, что тип изображения Gif (например, one ).Изображение отображается, но с зеленым фоном и без анимации.

Чего мне не хватает?Есть ли лучший способ заставить его вернуть изображения?

Это код, который я получил:

public void ProcessRequest(HttpContext context)
{
    QuestMediaPresenter FPresenter = new QuestMediaPresenter();
    var lMediaId = Convert.ToInt32(context.Request.QueryString["MediaId"]);

    if (lMediaId == null)
    {
       throw new HttpException(404, "Invalid image id.");
    }
    var lStream = FPresenter.GetMedia(lMediaId);

    context.Response.ContentType = getImageContentType(lMediaId);

    Image lImage = Image.FromStream(lStream);
    //I know the System.Drawing.Imaging.ImageFormat.Gif  is hardcode but its not 
    //relevant to this question, will make it dynamic later, if its still the way to go.
    lImage.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
}

public bool IsReusable
{
    get { return true; }
}
...