我需要控制應用程序中的會話,例如:當用戶在文本框中鍵入sam時,下一個用戶不能鍵入sam作爲已經使用的sam!任何想法?應用程序中的控制會話asp.net/c#
Application["UserName"] = user.Text;
if (Application["UserName"] == "sam")
{
}
我需要控制應用程序中的會話,例如:當用戶在文本框中鍵入sam時,下一個用戶不能鍵入sam作爲已經使用的sam!任何想法?應用程序中的控制會話asp.net/c#
Application["UserName"] = user.Text;
if (Application["UserName"] == "sam")
{
}
我會根據我的理解來回答,這不是一個明確的問題。
首先:如之前所說的session
是per client
。所以這不是問題的答案..
我做一個樣本:
ASPX:
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txt_name" runat="server" ontextchanged="txt_name_TextChanged"></asp:TextBox>
<asp:Label ID="lbl_message" runat="server"></asp:Label>
</div>
</form>
</body>
的.cs:
public partial class _Default : System.Web.UI.Page
{
static int i =0;
protected void Page_Load(object sender, EventArgs e)
{
if (i > 0 && txt_name.Text == "sam")
{
txt_name.Enabled = false;
txt_name.Text = string.Empty;
lbl_message.Text = "In use";
}
else
{
txt_name.Enabled = true;
lbl_message.Text = string.Empty;
}
}
protected void txt_name_TextChanged(object sender, EventArgs e)
{
if (txt_name.Text == "sam")
{
i++;
}
}
}
您可以使用應用程序變量而不是靜態變量如前所述。
謝謝你的好例子 –
會話是特定於當前用戶的。如果其他用戶訪問您的網站,他將無法讀取其他用戶的會話值。因此,您最好將這些信息存儲在所有用戶共享的Application state中。該文檔包含許多示例。
您必須使用Application level variable instead of a Session variable,
,因爲應用程序變量值將在用戶中持續存在。例如
Application["UserName"] = user.Text;
if (Application["UserName"] == "sam")
{
labelMessage.Text = "This user has been already selected.";
}
謝謝你,但如何寫一個代碼說,如果SAM已經在使用「做某事」? –
第二人稱類型山姆時,需要採取措施 –
您可以將標籤和顯示消息發送給用戶。你可以檢查這個線程的類似例子。至少你可以從這個主題有想法。 http://stackoverflow.com/questions/6340314/is-there-any-email-already-exists-in-asp-net-functionality-with-validator/6340390#6340390 –
您昨天發佈了類似的問題http://stackoverflow.com/questions/6636323/if-statement-to-control-input-text-in-code-behind –
您需要提供更多關於您的具體情況的詳細信息,否則你會得到非常一般的答案,對你的具體情況不是很有幫助。 –
我想你會找到一個很好的教程,跟隨和研究,以更好地服務;你還沒有指定是否將用戶信息存儲到數據庫,純文本文件,完全存儲在內存中,還是完全硬編碼到應用程序中(這是_looks_所喜歡的,但它肯定不會很有趣到_use_)。堆棧溢出是學習某些特定事物的好方法,但我不會推薦它嘗試從頭開始學習。找到一個很好的ASP.net教程(嘗試http://www.asp.net開始?)來學習 - 並隨時提問關於教程的問題。 :) – sarnold