2
我有希望在查询字符串传递一个ID到另一页包含 '+'
例如
的Response.Redirect(“〜/帐户/登录页面的Request.QueryString []。 aspx?CertificateID =“+ CertificateTextBox.Text);
但CertificateTextBox值在Encoding.UTF8格式
因此它可以包含字符,如“ZnbiS69F2g22OeupHw + XLG ==”
当接收页面获取查询字符串
CertificateTextBox.Text = Request.QueryString["CertificateID"];
“+”和可能的其他查询字符串,如“?”被剥离!
所以我最终
Request.QueryString["CertificateID"];
返回
“ZnbiS69F2g22OeupHw XLG ==”
“+” strinpped的!
有没有一种方法来编码这些字符,使他们不被条纹由QuesryString() 或我必须使用会话变量?
我用尽几种类型的编码,但如果“+”是一个查询字符串的任何地方被剥夺! – user319675 2010-07-31 12:27:33
@ user319675 - 当你解码时会发生*你确定你没有错误地运行UrlDecode()吗?当你编码你的字符串应该看起来像这样:'“ZnbiS69F2g22OeupHw%2bXlg ==”'。 – 2010-07-31 12:28:52