Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.Net和NameValueCollection_C#_Asp.net_Namevaluecollection - Fatal编程技术网

C# ASP.Net和NameValueCollection

C# ASP.Net和NameValueCollection,c#,asp.net,namevaluecollection,C#,Asp.net,Namevaluecollection,我有以下方法: public object[] GetEventsByUser(DateTime start, DateTime end, string fullUrl) 完整URL的值为: 当我这样做时: NameValueCollection qscoll = HttpUtility.ParseQueryString(fullUrl); 我得到: {http%3a%2f%2localhost%3a50435%2fpage%2fview.aspx%3fsi=00&us=admin&ut=

我有以下方法:

public object[] GetEventsByUser(DateTime start, DateTime end, string fullUrl)
完整URL的值为:

当我这样做时:

NameValueCollection qscoll = HttpUtility.ParseQueryString(fullUrl);
我得到:

{http%3a%2f%2localhost%3a50435%2fpage%2fview.aspx%3fsi=00&us=admin&ut=smt&}

但是我需要获取这个页面查询字符串中的参数,使用这个值,我无法获取“si”值,因为启动查询字符串的问号是经过编码的。 所以我想:“嗯……我应该尝试使用HttpUtility.HtmlEncode()

然而,方法HtmlEncode返回void:然而,该方法的第二个参数将值发送给TextWriter。但它不是NameValueCollection


也许解决办法很简单。。。但是我看不到它。

在解析之前,您需要将其精简为仅查询字符串,如下所示:

if (fullUrl.Contains("?")) {
  fullUrl = fullUrl.Substring(fullUrl.IndexOf("?") + 1);
}
NameValueCollection qscoll = HttpUtility.ParseQueryString(fullUrl);
你可以试试:

var si = Request["si"];
var user = Request["us"];
//etc.

你的意思是
Request.QueryString[“si”]
。我的意思是:Request[“xy”],我改变了这个。