Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.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# 用c语言解码查询字符串#_C#_Asp.net_Dotnetnuke - Fatal编程技术网

C# 用c语言解码查询字符串#

C# 用c语言解码查询字符串#,c#,asp.net,dotnetnuke,C#,Asp.net,Dotnetnuke,我在模块中使用DNN的分页控制。当模式不是回发时,我遇到了这个问题。 url是:../DNNArticle/list/reftabid/97?tag=تگ 第几页是变化。url是:…DNNArticle/list/reftabid/97/currentpage/3?tag=ØÚ 我需要获取用于筛选查询的标记值。但当页面被更改时,我不能这样做。 我使用此代码获取标记参数的值: System.Collections.Specialized.NameValueCollection qscoll =

我在模块中使用DNN的分页控制。当模式不是回发时,我遇到了这个问题。 url是:
../DNNArticle/list/reftabid/97?tag=تگ

第几页是变化。url是:
…DNNArticle/list/reftabid/97/currentpage/3?tag=ØÚ

我需要获取用于筛选查询的标记值。但当页面被更改时,我不能这样做。 我使用此代码获取标记参数的值:

 System.Collections.Specialized.NameValueCollection qscoll = HttpUtility.ParseQueryString(HttpUtility.HtmlDecode(Request.QueryString.ToString()));
 foreach (string skey in qscoll.AllKeys){
      if (skey.ToLower() == "tag"){
         taganme = qscoll[skey];
         taganme = HttpUtility.UrlDecode(taganme);                         
      }
 }

当标记值是波斯语单词时会发生这种情况。用英语来说,我没有问题

奇怪,显然是编码问题。。。在处理过程中的某个地方,它以一种编码方式读取数据,以另一种编码方式写入数据。您可以在将字符串放在URL上之前使用base64对其进行编码,然后在回发之后执行相反的操作。。这是一个难看的乱七八糟的问题,但它会起作用。在回发之前,我无法访问url