运行后 网页上显示的图片路径是
http://localhost/CGD.Web/DNAImages//DNA_TImages/2011713164457859.jpg
我的代码是
类代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Drawing;
using System.IO;
public class DefaultImages : IHttpHandler
{
/// <summary>
/// 1.准备素材
/// </summary>
private string _DefaultImage = "~/Image/none.jpg";
public void ProcessRequest(HttpContext context)
{
//2.准备在内存中的图片
Image image = null;
if (File.Exists(context.Request.PhysicalPath))
{
}
else
{
// 3.2加载图
image = Image.FromFile(context.Server.MapPath(_DefaultImage));
}
//4.1指定输出的格式
context.Response.ContentType = "image/jpeg";
//4.2真正保存到输出的流中
image.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
//5.善后 关闭流 和 写
image.Dispose();//关闭流
context.Response.End();
}
#region IHttpHandler 成员
public bool IsReusable
{
get { throw new NotImplementedException(); }
}
#endregion
}
我的web.config
<add path="../DNAImages//DNA_TImages/*.jpg" verb="*" type="DefaultImages"/>
但是我设置的默认图片没有显示出来,求解,我认为是web.config里写的路径的问题,可是我改了好多中写法,都不行,求高人帮忙
图片原路径
http://localhost/CGD.Web/DNAImages/DNA_TImages/2011713164457859.jpg 改成这样了,
web.config 改成
<add path="DNAImages/DNA_TImages/*.jpg" verb="*" type="DefaultImages"/>
可还是不行
能说下你说的“不行”时出现的问题是什么?有什么错误?
是希望完成这个功能还是找个取代方法也可以?
就我觉得,你这个不需要这么复杂,在生成页面的时候做检查不是更方便。
这种问题,90%是图片路径错误了.
这个要排错很简单啊,你调试一下,看访问图片的时候,能不能进入断点,如果能进去,说明web.config配置是没有问题的。如果这个没有问题,你调试一下,为什么没有显示默认图片就简单了
还是要调试下,设置一个断点,我看我同事都是这么做的。