在querystring参数中获取空值
本文关键字:获取 空值 参数 querystring | 更新日期: 2023-09-27 18:08:48
在我的应用程序中,我已经发送一个链接到用户的电子邮件id,他可以下载软件上点击此链接....现在我的url是....http://www.abc.co.in/Download.aspx?period=11/04/2013%2012:29:20%20PM&ProductName=Otja和我的代码检索这个值在页面加载下载。Aspx页面
string PName = Request.QueryString["ProductName"] as string;
string myDate = Request.QueryString["period"];
if (!String.IsNullOrEmpty(myDate))
{
myDate = myDate.Replace("!", ":");
}
DateTime dt1 = Convert.ToDateTime(myDate);
DateTime dt2 = DateTime.Now;
TimeSpan variable = dt2 - dt1;
if (variable.TotalMinutes > 5)
{
//Response.Write("Download time is expired now");
lblmsg.Visible = true;
lblmsg.Text = "Download time is expired now";
}
else
{
lblmsg.Visible = true;
lblmsg.Text = "U can Still Download";
}
但这是不工作,我测试了,在5分钟之前,几分钟后,它只显示"你仍然可以下载",所以我认为我的错误是,我不能检索到这个下载查询字符串上的产品名和周期值。Aspx页面,请帮助我…谢谢我认为应该有错误.....字符串未被识别为有效的日期时间。这就是为什么它传递空值,所以有解决方案吗??
您说您认为代码无法检索查询参数。为什么不先打印这些值来确认一下呢?
Request.QueryString()看起来是正确的。
你的逻辑可能有问题,可能导致else语句被执行。
根据您提供的更多信息,请尝试-
变量myDate的值必须为"11-04-2013 06 36"。请证实。
代替Convert.ToDateTime(myDate);
试试这个
DateTime.ParseExact(myDate, "dd-MM-yyyy HH:mm", System.Globalization.CultureInfo.InvariantCulture);