我有3個部分到我的站點,站點主站,用戶控制(站點站點內部)和常規頁面。在頁面前加載用戶控制
當用戶登錄時,他們被重定向到常規頁面。用戶控制是不同帳戶(自動選擇第一個帳戶)的下拉列表,獲取他們的用戶名並運行存儲過程以將他們的信息提取到SiteID
會話變量中。
然後在常規頁面中,我將所有標籤設置爲用戶信息。與此代碼。
if (Session["SiteID"] != null)
{
SiteID = int.Parse(Session["SiteID"].ToString());
PopulateAccountData();
PopulateAccountInformation2();
PopulateSiteNodes();
PopulateSiteMap();
}
else
{
LabelSiteName.Text = "No Site Selected";
}
問題是,當頁面加載的第一次它不具備Session["SiteID"]
,我打刷新一切加載。
我是新來的ASP.net,所以我不知道如果我這樣做是正確的,但我怎麼得到一切加載第一次?
不要讓用戶控件綁定本身'Page_Load'但'DataBind'它從它應該的頁面。這也可以延遲加載控件。該頁面是控制器而不是'UserControl'。因此,在UserControl中提供一個公共方法,您可以從該頁面調用該方法。 – 2013-02-14 14:20:53