5
我使用ASP和C#在.NET中創建了一個Web表單。此表格有一個DropDownList控件與其AutoPostBack屬性設置爲真。如何在.NET C#中正確使用QueryString?
當用戶從DropDownList中選擇一個項目時,會顯示窗體上的一些數據。
現在,我希望用戶能夠通過複製其上具有QueryString的URL(如http://www.site.com?ProdID=1234
)來共享他或她的數據。
我做了以下嘗試做到這一點:
protected void Page_Load(object sender, EventArgs e)
{
// check if the URL has a QueryString item if yes the use it.
if (!String.IsNullOrEmpty(Request.QueryString["ProdID"]))
{
ddlProduct.SelectedIndex = ddlProduct.Items.IndexOf(ddlProduct.Items.FindByValue(Request.QueryString["ProdID"]));
}
}
這段代碼的問題是,當用戶從DropDownList中選擇不同的項目他或她所選擇的項目被用在Page_Load(覆蓋),因爲我們現在在URL上有一個QueryString。 (我建立的QueryString,然後使用重定向()方法到一個事件相同的頁面)
所以我的問題在於:是否有可能不斷更改URL的查詢字符串時,用戶更改所選來自DropDownList的項目,並在所選項目的表單上顯示正確的數據?
我感覺這就像是雞還是雞蛋的問題。
謝謝。
'如果(Page.IsPostBack && String.IsNullOrEmpty(的Request.QueryString [ 「的ProdID」]))' – asawyer