0

我试图通过 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= 这会导致解密过程出现异常。

有人知道它在哪里变成小写吗?

4

1 回答 1

0

我找到了我的答案。问题是路由!

我的路由强制小写定义为routes.LowercaseUrls = true;

所以它会自动将 url 转换为小写,我的加密被破坏了!

于 2014-09-06T12:34:43.870 回答