如何将值传递给httpget ActionResult

时间:2018-01-05 13:01:06

标签: asp.net-mvc

Url bellow我正在传递,并希望从我的httpget ActionResult方法获得价值。我已经测试并收到错误HTTP错误404.0 - 未找到。有任何想法纠正网址或解决方案是什么?

  

http://localhost:53081/Dashboard/UpdatePassword/Email=John@gmail.com/Token=809a5bc2-5f1b-ce5b0203ff1b

[HttpGet]
        public ActionResult UpdatePassword(string Email, string Token)
        {
            using (var db = new MyappEntities())
            {

                return View();
            }
        }

3 个答案:

答案 0 :(得分:1)

参数用作查询字符串,除非您以所需的模式为它们设置路由。因此,您的网址应该是

  

http://localhost:53081/Dashboard/UpdatePassword?Email=John@gmail.com&Token=809a5bc2-5f1b-ce5b0203ff1b

答案 1 :(得分:1)

这是传递参数的错误方法。您需要遵循查询字符串格式(注意@是编码的):

http://localhost:53081/Dashboard/UpdatePassword?Email=John%40gmail.com&Token=809a5bc2-5f1b-ce5b0203ff1b

另一种选择是

http://localhost:53081/Dashboard/UpdatePassword/John%40gmail.com/809a5bc2-5f1b-ce5b0203ff1b

但是这需要在你的路由配置中进行额外的设置,坦率地看起来有点不对。

答案 2 :(得分:0)

更新了网址,试试这个:

http://localhost:53081/Dashboard/UpdatePassword?Email=John@gmail.com&Token=809a5bc2-5f1b-ce5b0203ff1b

您可以阅读有关查询字符串的更多信息:

https://www.dotnetperls.com/querystring

相关问题