ASP.NET MVC5 提交后多次提交且有乱码

u014548735 2016-02-19 03:59:51
在本地调试时都是正常的,可是部署到远程服务器后,同样的界面提交会重复多次,而且会出现乱码。
前台代码:
   @using (Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div class="form-horizontal">
@Html.HiddenFor(model => model.Id)
@Html.HiddenFor(model => model.CreateBy)
<fieldset>
<legend>SOA项</legend>
<div class="form-group">
<input type="button" id="btn_AddSOA" class="btn btn-success" style="float:right;margin-right:20px" data-toggle="modal" data-target="#myModal_soa" value="添加SOA模板" />
</div>
<div class="form-group">
@Html.LabelFor(model => model.Name, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.TextBoxFor(model => model.Name, new { @class="form-control"})
@Html.ValidationMessageFor(model => model.Name)
</div>

后台代码:

[HttpPost]

[ValidateInput(false)]
public ActionResult Edit([Bind(Include = "Id,SOAType,SOAUrl,SOAString,,SOAJson,Name,ItemType,Environment,Content,Description")] SOAWorkItem soaworkitem)
{
if (ModelState.IsValid)
{
LogHelper.WriteInfoLog("Edit2-"+soaworkitem.Name + "," + soaworkitem.SOAString);
db.Entry(soaworkitem).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(soaworkitem);
}


通过日志查看,可以看到这个页面提交后重复了多次,而且有乱码
2016-02-19 15:44:08,454 [134] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:09,368 [43] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:09,743 [134] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,abcdefg
2016-02-19 15:44:09,790 [138] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:09,909 [138] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:09,997 [43] INFO loginfo [(null)] - Edit2-abcdefg,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,133 [109] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,287 [134] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,378 [138] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,abcde<abcfg>efg
2016-02-19 15:44:10,502 [43] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,690 [43] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,768 [123] INFO loginfo [(null)] - Edit2-abcde<abcfg>efg,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,881 [134] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:10,997 [138] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:11,038 [109] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
2016-02-19 15:44:11,105 [43] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6
...全文
1713 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
u014548735 2016-02-20
  • 打赏
  • 举报
回复
自己顶一下。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
u014548735 2016-02-19
  • 打赏
  • 举报
回复
引用 5 楼 starfd 的回复:
你先F12自己测试下,看提交后,到底有多少个请求,先确认是不是多次提交问题
用Fiddler看过,就一个请求,可以是我在Action里的Log被执行了多次,就是问题里的日志: 2016-02-19 15:44:10,133 [109] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6 2016-02-19 15:44:10,287 [134] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6 2016-02-19 15:44:10,378 [138] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,abcde<abcfg>efg 2016-02-19 15:44:10,502 [43] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6 2016-02-19 15:44:10,690 [43] INFO loginfo [(null)] - Edit2-SOA%C3%FB%B3%C6,SOA%C3%FB%B3%C6 2016-02-19 15:44:10,768 [123] INFO loginfo [(null)] - Edit2-abcde<abcfg>efg,SOA%C3%FB%B3%C6 所以很奇怪啊
  • 打赏
  • 举报
回复
你先F12自己测试下,看提交后,到底有多少个请求,先确认是不是多次提交问题
u014548735 2016-02-19
  • 打赏
  • 举报
回复
引用 3 楼 hanjun0612 的回复:
[quote=引用 2 楼 u014548735 的回复:] [quote=引用 1 楼 hanjun0612 的回复:] url编码问题 System.Web.HttpUtility.UrlDecode(你的字符串)
谢谢你的回复,提交都是在@using (Html.BeginForm())里的,比如 @Html.TextBoxFor(model => model.Name, new { @class="form-control"})这个字段,我怎么转换编码呢?MVC不会自动转码吗?[/quote] 后台action里面,使用System.Web.HttpUtility.UrlDecode 试试[/quote] 还是有乱码,关键是我在本地调试的时候,Action只被调用一次,但是部署到远程的IIS上,Action在一次提交时被调用了N次,而且有乱码,怀疑是不是IIS配置问题啊。
正怒月神 版主 2016-02-19
  • 打赏
  • 举报
回复
引用 2 楼 u014548735 的回复:
[quote=引用 1 楼 hanjun0612 的回复:] url编码问题 System.Web.HttpUtility.UrlDecode(你的字符串)
谢谢你的回复,提交都是在@using (Html.BeginForm())里的,比如 @Html.TextBoxFor(model => model.Name, new { @class="form-control"})这个字段,我怎么转换编码呢?MVC不会自动转码吗?[/quote] 后台action里面,使用System.Web.HttpUtility.UrlDecode 试试
u014548735 2016-02-19
  • 打赏
  • 举报
回复
引用 1 楼 hanjun0612 的回复:
url编码问题 System.Web.HttpUtility.UrlDecode(你的字符串)
谢谢你的回复,提交都是在@using (Html.BeginForm())里的,比如 @Html.TextBoxFor(model => model.Name, new { @class="form-control"})这个字段,我怎么转换编码呢?MVC不会自动转码吗?
正怒月神 版主 2016-02-19
  • 打赏
  • 举报
回复
url编码问题 System.Web.HttpUtility.UrlDecode(你的字符串)

62,270

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧