我定义了一个CoverHandler.ashx,用来给图片加水印
然后在web.config中添加
<httpHandlers>
<add verb="*" path="Images/BookCovers/*.jpg" type="CoverHandler"/>
</httpHandlers>结果页面运行时报未能加载类型“CoverHandler”。哪里写错了?该如何处理~先谢谢各位了~
然后在web.config中添加
<httpHandlers>
<add verb="*" path="Images/BookCovers/*.jpg" type="CoverHandler"/>
</httpHandlers>结果页面运行时报未能加载类型“CoverHandler”。哪里写错了?该如何处理~先谢谢各位了~
没看到有name属性啊。求详解~~
CoverHandler编译成功了吗
<%@ WebHandler Language="C#" Class="CoverHandler" %>using System;
using System.Web;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;public class CoverHandler : IHttpHandler
{
private const string WATERMAEK_URL = "~/Images/water.jpg"; public void ProcessRequest(HttpContext context)
{
string path = context.Request.PhysicalPath;
Image Cover;
if (File.Exists(path))
{
Cover = Image.FromFile(path);
Image water = Image.FromFile(context.Request.MapPath(WATERMAEK_URL)); Graphics g = Graphics.FromImage(Cover);
g.DrawImage(water, new Rectangle(Cover.Width - water.Width, Cover.Height - water.Height, water.Width, water.Height), 0, 0, water.Width, water.Height, GraphicsUnit.Pixel);
g.Dispose();
water.Dispose();
}
else
Cover = Image.FromFile(path);
context.Response.ContentType = "image/jpeg";
Cover.Save(context.Response.OutputStream, ImageFormat.Jpeg);
Cover.Dispose();
context.Response.End();
}
public bool IsReusable {
get {
return false;
}
}}明天中午结贴~谢谢各位~
节点下
<system.webServer>
<handlers>
<add name="x" verb="*" path="Images/BookCovers/*.jpg" type="CoverHandler"/>
</handlers>
</system.webServer>
解决方法就是孟兄12楼说的
但配置写在
<system.webServer>节点下貌似不行
后来又改回写到
<system.web>
<httpHandlers>
<add verb="*" path="Images/BookCovers/*.jpg" type="CoverHandler"/>
</httpHandlers>
</system.web>
中就搞定了~结贴~~