我试图通过BeginForm的路由集合传递加密字符串,方法是在ViewBag中传递它:
@using (Html.BeginForm("Go", "Process", new { id = ViewBag.Id }, FormMethod.Post, new { @class = "seperate-sections fill-up form-horizontal", enctype = "multipart/form-data" }))
ViewBag.Id
是动态加密的字符串,例如:g9IPGGXm4jw=
不幸的是,它通过表单提交到达我的控制器;它有小写,例如:g9ipggxm4jw=
会导致解密过程出现异常。
有人知道它变成小写的地方吗?
答案 0 :(得分:0)
我找到了答案。问题是路由!
我的路由强制小写定义为routes.LowercaseUrls = true;
因此它会自动将网址转换为小写,我的加密功能也被破坏了!