0
我會看看是否可以清楚地解釋這一點。我有2個Web表單。一個是基本的Forms Authentication登錄頁面,另一個表單顯示來自多個服務器的任務。我正在創建一個存儲用戶ID的cookie。這裏是我的Cookie代碼:C#根據來自cookie的數據填充下拉菜單
FormsAuthenticationTicket tkt = new FormsAuthenticationTicket(1, txtUser.Text, DateTime.Now, DateTime.Now.AddMinutes(120), true, rdr.GetInt32(0).ToString(), FormsAuthentication.FormsCookiePath);
string hash = FormsAuthentication.Encrypt(tkt);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, hash);
我的其他形式,我有一個下拉框,顯示由服務器IP的所有服務器從服務器表。
public void Populate()
{
SqlConnection myConnection1 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBConnection"].ConnectionString);
myConnection1.Open();
SqlCommand cmd1 = new SqlCommand("SELECT ServerIP FROM Servers", myConnection1);
SqlDataReader dropReader;
dropReader = cmd1.ExecuteReader();
drpChoose.DataSource = dropReader;
drpChoose.DataTextField = "ServerIP";
drpChoose.DataValueField = "ServerIP";
drpChoose.DataBind();
}
我打電話填寫頁面加載。我有另一個存儲權限的表。它具有UserID,ServerID和權限(讀取或執行)。假設用戶ID 1僅與具有IP 192.168.0.10的服務器ID 1相關聯。我怎樣才能讓這個服務器IP在下拉菜單中顯示?我很確定,如果我將cookie傳遞給第二種形式,我可以從中獲取用戶ID,但我不知道從哪裏開始。
如果我沒有提供足夠的信息,我很抱歉。如果需要,我會提供更多。
我所做的加入,但不知道如何在cookie中傳遞。我將HTTPCookie傳遞給Populate還是傳遞UserID? – Matt 2011-06-08 18:17:02
我會從您的頁面加載cookie中檢索用戶標識,然後將用戶標識傳入填充。 (Request.Cookies [「userID」]!= null) – Rich 2011-06-08 18:18:58
我添加了代碼。 int.TryParse(Request.Cookies [「userID」]。ToString(),out uid); 填充(uid);但即使cookie顯示正確的用戶ID仍然爲0 – Matt 2011-06-08 19:57:18