从Encoded Url获取价值

时间:2012-08-23 21:43:22

标签: c# asp.net .net winforms

我正在尝试从C#中的编码URL获取值。例如,我正试图从以下网址获取“customerID”:

  http://<DOMAIN>/default.aspx%3FcustomerID%3D12345%26reference%3D2222

我尝试了以下内容:

  string customerID = HttpUtility.UrlDecode(Request.QueryString["customerID"]);

但它回来了。获得此值的正确方法是什么?

由于 杰

2 个答案:

答案 0 :(得分:1)

string str = " http://DOMAIN/default.aspx%3FcustomerID%3D12345%26reference%3D2222";

var url = HttpUtility.UrlDecode(str);
var parameters = HttpUtility.ParseQueryString(new Uri(url).Query);
var id = parameters["customerID"];

答案 1 :(得分:0)

你的应用程序应该编码吗?和=迹象。通常在将信息传递给处理请求的应用程序之前,通过iis设置Request变量。您需要发送should encode值而不是整个url。如果你的网址看起来像, ?customerID = 1234我想它会起作用,问题不在于你的代码,而在于如何构建url。