我想解析URL查询字符串中的数据并存储它。以下是我的示例网址。从这里我想解析数据并存储在某个地方
http://www.example.com/default.aspx?VN=919999999999&Rawmessage=urlTest&Time=2013-04-08 12:32:04&Send=919000000002&MID=101878052
我想将VN和Rawmessage存储到这些字符串中,
string x = Request.QueryString["VN"]
string y = Request.QueryString["Rawmessage"]
请帮我找一个解决方案。
答案 0 :(得分:1)
将此代码放在Page_Load()
文件中的Default.aspx.cs
函数中。
protected void Page_Load(object sender, EventArgs e)
{
string x = Request.QueryString["VN"];
string y = Request.QueryString["Rawmessage"];
}
答案 1 :(得分:0)
参考我们的讨论,我想你想要解析查询字符串键值对并在其他地方使用这些值。
此外,ASP.Net不必对解析做任何事情,这是一个纯粹的C#问题。
我在控制台应用程序的上下文中给出了问题的示例解决方案,您可以根据自己的喜好重复使用代码。
var inputUrl =
@"http://www.example.com/default.aspx?VN=919999999999&Rawmessage=urlTest&Time=2013-04-08 12:32:04&Send=919000000002&MID=101878052";
int index = inputUrl.IndexOf("?");
var queryString = inputUrl
.Substring(index + 1)
.Split('&');
foreach (var strKeyValuePair in queryString)
{
var keyValPair = strKeyValuePair.Split('=');
Console.WriteLine("Key: {0}, Value:
{1}",keyValPair[0],keyValPair[1]);
}
Console.WriteLine("\n============================================\n\n");
string VN = queryString.FirstOrDefault(x => x.StartsWith("VN"));
string RawMessage = queryString.FirstOrDefault(x =>
x.StartsWith("Rawmessage"));
Console.WriteLine("VN: {0}",VN.Split('=')[1]);
Console.WriteLine("RawMessage: {0}", RawMessage.Split('=')[1]);
Console.ReadLine(); // just to halt the console