• asp.net页面中实现如果图片不存在则显示默认图片


    ASP.net开发中如果想要实现图片找不到时显示默认图片的功能,我们有以下几种方法:

    1。js

    可以获得页面上每个image标签的对象。然后再设置它的src属性就ok了。

    代码
    <script>

      function window.onload() {
        var img = document.getElementById("form1").getElementsByTagName("img")
        for (var i = 0; i < img.length; i++) {
            if (img[i].readyState == "uninitialized") {
                img[i].src = "../images/defaultImage.bmp";
            }
        }
    }

    </scirpt>

    2.webconfig配置

    在webconfig中配置可以简便实用的解决一些棘手的问题。首先,每次解决方案的运行都要加载webconfig配置文件。我们可以写个公共类来继承IHttpHandler。在webconfig中配置 <httpHandlers> </httpHandlers>。

    (1).类的方法

    代码
        public ImageManager()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //
        }
        private const string DEFAULTIMAGE_URL = "DEFAULT.JPG";

        public bool IsReusable
        {
            get { return false; }
        }

        public void ProcessRequest(HttpContext context)
        {
            //获得请求的每个图片的不同的物理地址
            string imgPhysicalPath = context.Request.PhysicalPath;
            System.Drawing.Image image = null;

    if (File.Exists(imgPhysicalPath))
            {
                            //为空

            }
            else
            {
                //如果图片不存在,放上默认的图片
                image = System.Drawing.Image.FromFile(context.Server.MapPath(DEFAULTIMAGE_URL));
            }
            //设置输出的类型
            context.Response.ContentType = "image/jpeg";
            //把图片保存到输出流里
            image.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
            image.Dispose();

    }

    (2).webconfig配置

    <add verb="*" path="路径/*.jpg" type="公共类名"/>

  • 相关阅读:
    params可变参数
    using释放资源
    第二章:深入C#数据类型
    体检套餐项目解析
    堆栈
    C#必看:《第17章节QQ管理系统》
    C#必看:《第15章节学生管理系统》
    ACM hdu 1008 Elavator
    jq尺寸和位置总结篇(width scrollTop position offset)
    find children slice
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/2958358.html
Copyright © 2020-2023  润新知