2011-08-12 63 views
0

我想記錄用戶在從下拉列表中選擇選項時所做的選擇。我啓用了autopostback,當用戶選擇一個選項時,它會更新頁面上的內容。對於喜歡點擊搜索的用戶,我也有一個搜索按鈕。我知道我需要使用的SelectedIndexChanged文本文件中DropDownList的日誌選擇

protected void CategoryDropDownList_SelectedIndexChanged(object sender, EventArgs e) 
     { 
     TextWriter sw = new StreamWriter("selectordata/results.txt"); 
     sw.WriteLine(//Write Data Here); 
     sw.Close(); 
     } 

我的第一個問題是我怎麼寫什麼選擇,他們只是在做的SelectedIndexChanged。我不能打電話給CategoryDropDownList.SelectedValue可以嗎?

其次有沒有什麼方法可以跟蹤它是否是同一個用戶。在我的文本文件的意思是Idealy我想它存儲這樣

8/12/2011上午10時56 SESSIONID(或東西)所選類別#1
8/12/2011 10:57 SAME SESSIONID所選產品#2

這可以輕鬆完成嗎?

回答

1

如果你知道選定的指數,你可以從集合或項目剛剛選定的值:如果您需要找到特定用戶的會話ID,你可以抓住

string value = myDropDownList.SelectedValue; 
ListItem item = myDropDownList.Items[myDropDownList.SelectedIndex]; 

,從您的會話對象(假設你正在使用微軟的默認會話):

HttpContext.Current.Session.SessionID 
+0

最好的方法來處理兩個人可能試圖同時寫入文件的機會?不會導致訪問被拒絕的錯誤? – atrljoe

0

你可以調用DropDownList.SelectedValue,你也可以存儲你的userId是某種會話並使用Session [「key」]檢索。