在&之后,MVC QueryString参数突然无法读取

时间:2018-08-27 18:07:09

标签: c# asp.net-mvc url

这种接收新邀请的方法一直有效。今天早上突然不工作。调试显示该方法未使用&

这是URL(请注意,参数用&除):

http://localhost:1212/Account/HandleInvitation?guid=56cfbb11-6507-4cf4-aecf-a58f3e1a37a8&email=email@address.com&usertype=Vendor&vendorid=0

这是方法sig:

[AllowAnonymous]
    [HttpGet]
    public ActionResult HandleInvitation(string email, string guid, UserType userType = UserType.None, int vendorId = 0)
    {

结果是设置了'guid',因为它是url中的第一个……第一个&之后的所有内容都将被忽略。传入消息来自SendGrid,我不确定它们是否始终像这样,或者编码的&符最近是否有所更改。

我知道我可以在方法的第一行中手动解码或解析URL,但是我担心的是某些地方发生了变化,这可能是系统范围内其他任何url编码参数的问题。

所以我的问题是:是否有某个设置会影响此设置?我该如何解决它,以便像以前一样正确地分配参数?

谢谢

1 个答案:

答案 0 :(得分:0)

好吧,我从来没有弄清楚是什么导致了URL进行HTML编码,但是我通过关闭SendGrid中的点击跟踪来解决了该问题