添加了validaterequest=false 为什么还是报错

本文探讨了一个在Web应用迁移版本过程中遇到的错误问题,解释了问题的成因在于应用部署环境与源代码版本不匹配,通过在web.config文件中调整HTTP运行时请求验证模式解决了错误。

一些平时见看上去很简单的问题,一些简单的事情,也许在复杂的环境中就看上去不那么简单了.

今天遇到一个错误:话说是客户端存在潜在的危险...这样的错误我不是第一次遇到了,所以我以为很简单的在page 中添加了一个validaterequest=false 在运行页面 还是报相同的错误,于是就想不明白了,这是什么情况..?

开始在网上查资料 大致都是相同的一些回答:第一种解决方案:在page中添加validaterequest=false 第二种就是在web.config <con>中添加一个属性.而且都是很统一的答案,让我以为是我自己错了,在web.config中添加了属性 并且检查了page中的的确确是有的,再运行还是报错.

茫然....

查查看为什么出现了错误吧:

在csdn的一个问题上找到了答案:

我的问题和http://topic.youkuaiyun.com/u/20110623/14/a23e6ff5-2c92-4896-870b-2be525548433.html他得是一样的 项目是3.5的 但是发布到的却是4.0的版本上

在web.config中添加了:

<System.Web>配置节中添加如下一个配置呢?
<httpRuntime requestValidationMode="2.0" />

就完成了.

也许问题并不复杂而是一个简单的问题套在了一个简单的外衣里.变得让我有些迷惑吧!

[CustomUnAuthorize] [HttpPost] public string GetCountryStationPublishHourData() { ReturnData<IDictionary<string, object>> result = new ReturnData<IDictionary<string, object>>() { Status = false, Message = "接口报错,请联系管理员" }; try { string token = Request["token"].ToString(); DateTime? sdtDate = Request["sdtDate"].ConverTo<DateTime>(); DateTime? edtDate = Request["edtDate"].ConverTo<DateTime>(); var rs = TokenHelper.Validate(token, "GetStationPublishHourData"); result.Status = rs.Status; result.Message = rs.Message; if (rs.Status) { edtDate = edtDate ?? DateTime.Now.Date.AddDays(-1); sdtDate = sdtDate ?? edtDate.Value.AddDays(-7); if (edtDate.Value.AddDays(-6) > sdtDate) { result.Status = false; result.Message = "最大时间间隔不能超过7天"; } else { StationAQIPublishDataSource source = new StationAQIPublishDataSource() { ReportType = ReportTimeType.Hour }; Dictionary<string, object> param = new Dictionary<string, object>(); param.Add(Constant.PARAM_START_DATE, sdtDate.ToString()); param.Add(Constant.PARAM_END_DATE, edtDate.ToString()); source.Parameter = param; var datas = source.GetList().ToList(); var areaCodes = BSDContext<BSDRegion>.Instance.Where(o => o.Level == 2).Select(p => p.AreaCode.ToString()); var stations = BSDContext<PublishStation>.Instance.Where(o => areaCodes.Contains(o.CityCode.ToString())); var stationCodes = stations.Select(o => o.StationCode).ToList(); datas = datas.Where(o => stationCodes.Contains(o[Constant.STATION_CODE])).ToList(); datas.ForEach(o => { o[Constant.TIME_POINT] = o[Constant.TIME_POINT].ConverTo<DateTime>().ToString("yyyy-MM-dd HH:mm:ss"); o.Remove("OrderID"); o.Remove("AQIRank"); }); result.data = datas; } } } catch (Exception ex) { result.Status = false; result.Message += ex.ToString(); } return JsonConvert.SerializeObject(result); } 优化查询效率
最新发布
11-15
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值