2014-11-25 61 views
-2

我正在處理一個C#項目,該項目將我限制爲.Net 3.5。我需要能夠檢索一個查詢字符串中的鍵的值,看起來像這樣:http://www.test.com/file?id=1&search=search+text&other=stuff使用.Net 3.5檢索C#中的查詢字符串值

沒有使用HttpUtility.ParseQueryString(似乎不在.net 3.5中)什麼是最乾淨的方式檢索關鍵值?

附註:我在谷歌上看起來很高,但只能找到利用上述的例子。

+3

'HttpUtility.ParseQueryString()'([在.NET 3.5確實存在] http://msdn.microsoft.com/en-us /library/ms150046%28v=vs.90%29.aspx)。 – 2014-11-25 11:31:07

+0

是的,我也看過那個頁面。但是我已經將System.Web添加到項目中,並且它不提供與HttpUtility相關的任何內容。 – James 2014-11-25 11:43:06

回答

0

有做

  1. 使用的幾種方法:(如 「搜索」) 「這裏請求名稱」] HttpContext.Current.Request
  2. 使用:

    Dictionary<string,string> ParseQueryString(string url) { 
        if(!url.Contains("?")) return new Dictionary<string,string>(); 
        var dict = new Dictionary<string,string>() 
        if(url.Contains("&")) { 
        var valuekeys = url.Split('?')[1].Split('&'); 
        foreach(var item in valuekeys) { 
         dict.Add(item.Split('=')[0],item.Split('=')[1]); 
        } 
        return dict; 
        } 
        var data = url.Split('?')[1].Split('='); 
        dict.Add(data[0],data[1]); 
        return dict; 
    } 
    

希望這有助於!

// Zerratar

0

可以使用:

Request.QueryString("Key") 
+0

這是一個網絡應用程序?我一直忘記說它是我正在開發的桌面應用程序。 – James 2014-11-25 11:59:35