Asp.net 如何在查询字符串中传递多个参数
我有三个值必须作为参数传递,例如,Asp.net 如何在查询字符串中传递多个参数,asp.net,query-string,Asp.net,Query String,我有三个值必须作为参数传递,例如,strID、strName和strDate 我想将这三个参数重定向到Response.redirect()中的另一个页面。有人能为我提供正确的查询字符串吗? ~mypage.aspx?strID=x&strName=y&strDate=z (以下是维基百科条目链接部分的文本。) 结构 包含查询字符串的典型URL如下所示: http://server/path/program?query_string 当服务器收到这样一个页面的请求时,它运行一个
strID
、strName
和strDate
我想将这三个参数重定向到Response.redirect()
中的另一个页面。有人能为我提供正确的查询字符串吗?
~mypage.aspx?strID=x&strName=y&strDate=z
(以下是维基百科条目链接部分的文本。)
结构
包含查询字符串的典型URL如下所示:
http://server/path/program?query_string
当服务器收到这样一个页面的请求时,它运行一个程序(如果配置为这样做的话),将查询字符串原封不动地传递给该程序。问号用作分隔符,不是查询字符串的一部分
网页中的链接可能具有包含查询字符串的URL,但HTML定义了web浏览器生成查询字符串的三种方式:
- 通过。。。元素
- 通过的服务器端映像映射ismap 具有构造的元素上的属性
- 通过现在已弃用的元素进行索引搜索
field1=value1&field2=value2&field3=value3…
- 查询字符串由一系列字段值对组成
- 在每对中,字段名和值用等号分隔。如果值是空字符串,则可以省略等号
- 对于嵌入在HTML中而不是由…生成的URL,一系列对由符号“&”(或分号“;”分隔;请参见下文)。 虽然没有明确的标准,但大多数web框架允许多个值与单个字段关联:
field1=value1&field1=value2&field1=value3…
对于表单的每个字段,查询字符串都包含一对字段=值。Web表单可能包括用户不可见的字段;提交表单时,这些字段包含在查询字符串中
此约定是W3C的建议。W3C建议所有web服务器除支持符号和分隔符[6]外,还支持分号分隔符,以允许HTML文档中URL中的application/x-www-form-Url编码查询字符串,而无需实体转义符号
从技术上讲,表单内容仅在获取表单提交方法时编码为查询字符串。当提交方法为POST时,默认情况下使用相同的编码,但结果不会作为查询字符串发送,也就是说,不会添加到表单的操作URL中。相反,字符串作为HTTP请求的主体发送
Query String: ?strID=XXXX&strName=yyyy&strDate=zzzzz
在重定向之前:
string queryString = Request.QueryString.ToString();
Response.Redirect("page.aspx?"+queryString);
像这样试试,应该有用
Response.Redirect(String.Format("yourpage.aspx?strId={0}&strName={1}&strDate{2}", Server.UrlEncode(strId), Server.UrlEncode(strName),Server.UrlEncode(strDate)));
我使用AbsoluteUri,您可以得到如下结果:
string myURI = Request.Url.AbsoluteUri;
if (!WebSecurity.IsAuthenticated) {
Response.Redirect("~/Login?returnUrl="
+ Request.Url.AbsoluteUri );
然后在登录后:
var returnUrl = Request.QueryString["returnUrl"];
if(WebSecurity.Login(username,password,true)){
Context.RedirectLocal(returnUrl);
它对我很有效。这可以通过以下方法完成:
Response.Redirect("http://localhost/YourControllerName/ActionMethodName?querystring1=querystringvalue1&querystring2=querystringvalue2&querystring3=querystringvalue3");
@DalijaPrasnikar此“链接”是指向本地主机的url,也是答案的一部分。请不要“机器人评论”