HttpUtility.ParseQueryString无需解码特殊字符

m.e*_*son 10 .net c# asp.net urlencode

Uri uri = new Uri(redirectionUrl);
NameValueCollection col = HttpUtility.ParseQueryString(uri.Query)
Run Code Online (Sandbox Code Playgroud)

uri.Query已被解码 - 所以我有什么方法可以阻止ParseQueryString它再次解码?

除此之外 - 是否有另一种方法从Uri检索名称值集合而不修改任何组件?

vol*_*pav 6

uri.Query在传递它之前对其进行编码ParseQueryString是我头脑中的第一件事.

UPDATE

刚刚ParseQueryString用Reflector 检查了方法:它假设查询字符串是编码的,你不能对它做任何事...... Bummer.所以我认为你需要手动解析它(网上有很多现成的算法).

或者,您可以在将查询字符串传递给ParseQueryString方法之前对其进行正确编码(考虑变量名称和所有特殊字符).

- 帕维尔