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");
 }
 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;
 }
 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();
 }