2013-04-11 155 views
0

在我的應用程序中獲取空值參數我已發送一個鏈接到用戶的電子郵件ID他可以下載軟件點擊此鏈接....現在我的網址看起來像.... http://www.abc.co.in/Download.aspx?period=11/04/2013%2012:29:20%20PM&ProductName=Otja 和我的爲頁面加載download.aspx頁面上retriving這個值代碼是在查詢字符串參數

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分鐘,分鐘後爲只顯示「您仍然可以下載」所以,我認爲我的錯誤是,我不能在這個download.aspx頁面上查詢querystring上的產品名稱和週期值..請幫助我..謝謝 我認爲應該有錯誤.....字符串未被識別作爲有效的日期時間。這就是爲什麼它是傳遞null值,所以任何解決方案?

回答

1

你說你認爲你的代碼無法檢索查詢參數。你爲什麼不確認通過先打印值。

Request.QueryString()看起來正確。

您的邏輯可能存在問題,可能會導致執行其他問題。

根據您所提供的請嘗試更多相關信息 -

變量指明MyDate值必須是「2013年11月4日06 36」。請確認。

代替Convert.ToDateTime(myDate);試試這個

DateTime.ParseExact(myDate, "dd-MM-yyyy HH:mm", System.Globalization.CultureInfo.InvariantCulture); 
+0

actully先生,我測試了本作代碼的Response.Redirect(「download.aspx,FALSE)該網頁,我對通過這個網址,使代碼發送郵件,並把調試器download.aspx和檢查後,我看到兩個查詢字符串傳遞null值.. – 2013-04-11 07:15:38

+0

在您的評論download.aspx網址沒有任何參數 – 2013-04-11 07:19:16

+0

這是reasion先生如果我把參數,然後它的工作,但我不能做這件事情,因爲在查詢頁面上單擊提交按鈕後,該URL將自動發送到用戶的郵件帳戶,並且下載過程已啓動,因此我無法將用戶重定向到該下載頁面,所以我不能通過該代碼,我只是通過測試 – 2013-04-11 07:22:32