本文实例为大家分享了ASP.net(C#)实现简易聊天室功能的具体代码,供大家参考,具体内容如下
1.搭建框架<html >
<head>
<title>聊天系统</title>
</head>
<frameset rows="80%,20%" >
<frameset cols="20%,80%">
<frame src="Register.aspx" />
<frame src="main.aspx" />
</frameset>
<frame src="login.aspx"/>
</frameset>
<body >
</body>
</html>
2.框架涉及三个页面
建立相应的页面布局:
1.login.asp
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class login : System.Web.UI.Page
{undefined
protected void Page_Load(object sender, EventArgs e)
{undefined
}
protected void LoginBtn_Click(object sender, EventArgs e)
{undefined
if (LoginID.Text.Trim() == string.Empty)
{undefined
Response.Write("<script>alert('请输入用户名!')</script>");
return;
}
if (LoginPwd.Text!= "123456")
{undefined
Response.Write("<script>alert('密码不正确,请重新输入')</script>");
return;
}
if (!IfLonined())
{undefined
Response.Write("<script>alert('用户名已经存在')</script>");
return;
}
Session["username"] = LoginID.Text;
if (Application["user"] == null)
{undefined
Application["user"] = Session["username"];
}
else {undefined
Application["user"] += "," + Session["username"];
}
Response.Redirect("send.aspx");
}
protected bool IfLonined()
{undefined
Application.Lock();
string users;
string[]user;
if (Application["user"]!=null)
{undefined
users = Application["user"].ToString();
user = users.Split(',');
foreach(string s in user)
{undefined
if(s==LoginID.Text.Trim().ToString())
{undefined
return false;
}
}
}
Application.UnLock();
return true;
}
protected void LoginPWD_TextChanged(object sender, EventArgs e)
{undefined
}
}
2.Register.asp
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class Register : System.Web.UI.Page
{undefined
protected ArrayList ItemList = new ArrayList();
protected void Page_Load(object sender, EventArgs e)
{undefined
Response.AddHeader("Refresh", "1");
Application.Lock();
string users;
string[] user;
if (Application["user"]!=null)
{undefined
users = Application["user"].ToString();
user = users.Split(',');
for(int i=user.Length-1;i>=0;i--)
{undefined
ItemList.Add(user[i].ToString());
}
UserList.DataSource = ItemList;
UserList.DataBind();
}
Application.UnLock();
}
protected void UserList_SelectedIndexChanged(object sender, EventArgs e)
{undefined
}
}
3.send.asp
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class send : System.Web.UI.Page
{undefined
protected void Page_Load(object sender, EventArgs e)
{undefined
if (Session["username"] != null)
{undefined
Username.Text = Session["username"].ToString() + "说:";
}
else
{undefined
Response.Redirect("login.aspx");
}
}
protected void SendBtn_Click(object sender, EventArgs e)
{undefined
string message;
message = "<font color='blue'>" + Session["username"].ToString() + "</font>说:";
message += Message.Text;
message += "(<i>" + DateTime.Now.ToString() + "</i>)";
message += "<br>";
Application.Lock();
if (chk.Checked)
Application["chatcontent"] = (string)Application["chatcontent"] + message + "<img src=image/00.gif>" + "<img src=image/01.gif>";
else
Application["chatcontent"] = (string)Application["chatcontent"] + message;
Application.UnLock();
Message.Text = null;
}
protected void LoginBtn_Click(object sender, EventArgs e)
{undefined
Response.Redirect("login.aspx");
}
protected void LoginOutBtn_Click(object sender, EventArgs e)
{undefined
Application.Lock();
if (Application["user"] != null)
{undefined
string users;
string[] user;
users = Application["user"].ToString();
Application["user"] = null;
user = users.Split(',');
foreach (string s in user)
{undefined
if (s != Session["username"].ToString())
{undefined
if (Application["user"] == null)
{undefined
Application["user"] = s;
}
else
{undefined
Application["uesr"] = Application["user"] + "," + s;
}
}
}
}
if (Session["username"] != null)
{undefined
Session["username"] = null;
}
Application.UnLock();
Response.Redirect("login.aspx");
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{undefined
}
}