开展.net mvc3遇到怪事+解

发展到今天.net mvc3遇到怪事。



使用Firefox浏览器。打开index页,求index该控制器是很多次,代码查询数据库的多个运行。server减速。
而且没有刷新页面,随着时间的推移有十二请求。无限循环。这件事情从来没有遇到过,真糊涂。

认真查看了一下原因,原来是图片的src,数据库中路径没有的情况下,src="/"  ,直接请求了默认的index控制器。



之后通过 在Index控制器中加一段处理代码处理了,并且还能够有图片没有的情况下。显示一张默认图片。



代码例如以下,加在控制器最前。

            if (Request.UrlReferrer != null)//某页面上图片请求的 UrlReferrer就是页面本身
            {
                string Accept = Request.Headers["Accept"];
                if (Accept.StartsWith("image/")  && Accept.Contains("application/")==false ) //图片请求通常是:image/png,image/*;q=0.8,*/*;q=0.5,IE和firefox中请求不同。页面请求也包括image/
                {
                    return File("/Content/images/Show/Show_pic07.jpg","image/jpeg");
                    //假设是图片src请求。返回一张默认图片,后面查询数据库的代码才不会反复运行。


            //假设不返回正确的图片,火狐浏览器会无限循环请求下去.
                }
            }

总结:本来10分钟就可以解决的事情。花了一个半小时 ,这与经验,开发过程。我们必须不断积累经验。

版权声明:本文博主原创文章,博客,未经同意不得转载。

posted @ 2015-09-18 09:17  zfyouxi  阅读(114)  评论(0编辑  收藏  举报