2013-04-30 48 views
1

我在两个ASP.NET网站之间传递GET变量。在过去,我一直使用HttpContext.Current.Request.QueryString["VARIABLE_NAME"]HttpContext.Current.Request.Params["VARIABLE_NAME"]读取来自查询字符串变量,但是我现在需要通过两个不同的变量,在我的查询字符串,像这样:如何从查询字符串中检索多个GET变量?

http://sampleurl.com/Default.aspx?VariableA=ValueA?VariableB=ValueB

我的问题是HttpContext.Current.Request.QueryString["VariableA"]将返回从VariableA开始并继续到VariableB的整个查询字符串。

我可以得到整个查询字符串,将其拆分到变量名上,然后读取结果值,但似乎马虎。有没有更优雅的解决方案通过C#读取多个GET变量?

+2

您的网址构建不正确。查询字符串以'?'开始,但每个键值对都必须用&符号('&')分隔,而不是多个问号。 – mroach 2013-04-30 16:08:30

回答

8

尝试这样

sampleurl.com/Default.aspx?VariableA=ValueA&VariableB=ValueB 

您有符号(&)单独的查询字符串变量。 ?启动查询字符串,=将名称与其值分开,并且&分隔名称/值对。

+3

重要的细节是'?'开始查询字符串,'='从它的值中分隔一个名称,'&'分隔名称/值对,而不是另一个'?'。 – 2013-04-30 16:08:19

+0

不错的描述@CoreyOgburn – 2013-04-30 16:09:20

+0

提问者似乎没有理解查询字符串的结构,我不得不两次注意到你的url和问题中的差异,因为差异非常小。我只是想突出这些差异。 – 2013-04-30 16:11:10

相关问题