public string getCountAndMaxCount(string roomName) { string str = ""; r = Application[roomName] as Dollers.model.Room; str = r.count + " / " + r.max_count; return str; }
protected void signout_btn_Click(object sender, EventArgs e) { if (Application[u.room_name] != null && !u.room_name.Equals("")) { Application.Lock(); r = Application[u.room_name] as Dollers.model.Room; r.addNewMessage(new Dollers.model.Message(false, "退出房间", u)); last_message = DateTime.Now; r.count--; if (r.count <= 0) { List<string> list = Application["room_list"] as List<string>; list.Remove(r.name); Application["room_list"] = list; Application[u.room_name] = null; Application[u.room_name + "_flag"] = null; } else { Application[u.room_name] = r; Application[u.room_name + "_flag"] = DateTime.Now; } Application.UnLock(); } u.room_name = ""; Session["User"] = u; Response.Redirect("list.aspx"); }
public bool roomIsFull(string roomName) { r = Application[roomName] as Dollers.model.Room; if (r.max_count == r.count) return true; else return false; }
protected void createBtn_Click(object sender, EventArgs e) { string roomName = Server.HtmlEncode(room_name.Value); int maxCount = int.Parse(max_count.Value); if (!roomName.Equals("") && room_name.Value.Length < 10) { r = new model.Room(roomName, "", maxCount); room_list = Application["room_list"] as List<string>; Application.Lock(); room_list.Add(r.name); Application["room_list"] = room_list; Application[r.name] = r; Application[r.name + "_flag"] = DateTime.Now; Application.UnLock(); Response.Redirect("room.aspx?room=" + HttpUtility.UrlEncode(r.name)); } }
protected void Page_Load(object sender, EventArgs e) { if (Session["user"] != null) { last_message = DateTime.Now; u = Session["user"] as Dollers.model.User; name.Text = u.name; if (u.room_name == "" && Request.QueryString["room"] != null && !Request.QueryString["room"].Equals("")) { u.room_name = Request.QueryString["room"]; Session["user"] = u; Application.Lock(); r = Application[u.room_name] as Dollers.model.Room; if (r.count >= r.max_count) { Response.Redirect("list.aspx"); } r.addNewMessage(new Dollers.model.Message(false, "进入房间", u)); r.count++; last_message = DateTime.Now; Application[u.room_name] = r; Application.UnLock(); } if (Application[u.room_name] == null) Response.Redirect("list.aspx"); Application.Lock(); Application[u.room_name + "_flag"] = DateTime.Now; Application.UnLock(); messagesDand(); } else { Response.Redirect("login.aspx"); } now = DateTime.Now; }
private void messagesDand() { r = Application[u.room_name] as Dollers.model.Room; var query = from items in r.message_list orderby items.create_time descending select items; message_list = new List<model.Message>(); foreach (Dollers.model.Message m in query) { message_list.Add(m); } message_Repeater.DataSource = message_list; message_Repeater.DataBind(); }
protected void submit_btn_Click(object sender, EventArgs e) { string content = message_text.Text; if (!content.Equals("") && content.Length <= 240) { Application.Lock(); r = Application[u.room_name] as Dollers.model.Room; r.addNewMessage(new Dollers.model.Message(true, Server.HtmlEncode(content), u)); Application[u.room_name] = r; Application.UnLock(); message_text.Text = ""; Application.Lock(); Application[u.room_name + "_flag"] = DateTime.Now; Application.UnLock(); last_message = DateTime.Now; } messagesDand(); }