我想创建自己的动态横幅,所以我开始创建一个图像处理程序,atm我有这个代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Faeria
{
/// <summary>
/// Summary description for FaeriaImage
/// </summary>
public class FaeriaImage : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
context.Response.Write("~/Images/bg1.jpg");
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
但是当我打电话给“http:// localhost:12361 / FaeriaImage.ashx”时,我只能得到这个:http://abload.de/image.php?img=1deib0.jpg。
当我在我的网站上调用它时,我没有任何图像。
这是我的错误吗?
答案 0 :(得分:1)
我已经使用了处理程序,据我所知你需要在处理程序中绘制图像。这段代码可能会帮助我,因为它帮助了我。试试吧
using (Bitmap image = new Bitmap(context.Server.MapPath("~/Images/bg1.jpg")))
{
using(MemoryStream ms = new MemoryStream())
{
image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
ms.WriteTo(context.Response.OutputStream);
}
}
答案 1 :(得分:0)
将您的代码更改为以下内容(不是Write而是WriteFile)
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
context.Response.WriteFile("~/Images/bg1.jpg");
}