首页 > 代码库 > 开发.net mvc3遇到奇怪的事情+解决方案
开发.net mvc3遇到奇怪的事情+解决方案
今天开发.net mvc3遇到奇怪的事情。
用火狐浏览器,打开index页面,请求index控制器很多次,查询数据库的代码多次执行,服务器变慢,
而且没刷新页面,过一段时间就有一两个请求,无限循环,这事从来没遇见过,真是一头雾水。
认真查看了一下原因,原来是图片的src,数据库中路径没有的情况下,src=http://www.mamicode.com/"/" ,直接请求了默认的index控制器。
之后通过 在Index控制器中加一段处理代码处理了,而且还可以有图片没有的情况下,显示一张默认图片。
代码如下,加在控制器最前。
if (Request.UrlReferrer != null)//某页面上图片请求的 UrlReferrer就是页面本身
{
string Accept = Request.Headers["Accept"];
if (Accept.StartsWith("image/"))//图片请求一般是:image/png,image/*;q=0.8,*/*;q=0.5
{
return File("/Content/images/Show/Show_pic07.jpg","image/jpeg");
//如果是图片src请求,返回一张默认图片,后面查询数据库的代码才不会重复执行。
//如果不返回正确的图片,火狐浏览器会无限循环请求下去.
}
}
总结:本来10分钟能解决的事,花了半个小时 ,这和经验有关,开发过程中,得不断积累经验。
用火狐浏览器,打开index页面,请求index控制器很多次,查询数据库的代码多次执行,服务器变慢,
而且没刷新页面,过一段时间就有一两个请求,无限循环,这事从来没遇见过,真是一头雾水。
认真查看了一下原因,原来是图片的src,数据库中路径没有的情况下,src=http://www.mamicode.com/"/" ,直接请求了默认的index控制器。
之后通过 在Index控制器中加一段处理代码处理了,而且还可以有图片没有的情况下,显示一张默认图片。
代码如下,加在控制器最前。
if (Request.UrlReferrer != null)//某页面上图片请求的 UrlReferrer就是页面本身
{
string Accept = Request.Headers["Accept"];
if (Accept.StartsWith("image/"))//图片请求一般是:image/png,image/*;q=0.8,*/*;q=0.5
{
return File("/Content/images/Show/Show_pic07.jpg","image/jpeg");
//如果是图片src请求,返回一张默认图片,后面查询数据库的代码才不会重复执行。
//如果不返回正确的图片,火狐浏览器会无限循环请求下去.
}
}
总结:本来10分钟能解决的事,花了半个小时 ,这和经验有关,开发过程中,得不断积累经验。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。