public void ReceiveFromClient() { while (true) { string receiveString = null; try { receiveString = br.ReadString(); } catch { //异常处理 } string[] spilt = receiveString.Split('@'); switch (spilt[0]) { case "RESEND": string res = DataHandle.Resend(spilt[1]); this.bw.Write(res); bw.Flush(); break; case "LOGIN": //登陆 LoginMsg msg = TalkHelper.HandleHelper.DeXMLSer <LoginMsg>(spilt[1]); string loginres = DataHandle.Login(msg.UserName, msg.Password); bw.Write(loginres); bw.Flush(); DataHandle.Default(string.Format("\n{0}-->{1}-->LOGIN", DateTime.Now.ToLongDateString(), msg.UserName)); break; case "SIGNUP": //注册 SignupMsg signupMsg = TalkHelper.HandleHelper.DeXMLSer <SignupMsg>(spilt[1]); string signupres = DataHandle.Signup(signupMsg.UserName, signupMsg.Password); this.bw.Write(signupres); bw.Flush(); //向客户端发送 DataHandle.Default(string.Format("\n{0}-->{1}-->SIGNUP", DateTime.Now.ToLongDateString(), signupMsg.UserName)); //将操作结果输出在服务器界面上 break; case "LOGOUT": //登出,暂时没有操作 break; default: try { DataHandle.Default(spilt[1]); } catch (Exception ex) { DataHandle.Default(ex.Message); } break; } } }
private void btnSignup_Click(object sender, RoutedEventArgs e) { if (txtName.Text != "" && Pwd.Password != "" && Pwd2.Password != "") { if (Pwd.Password.Equals(Pwd2.Password)) { SignupMsg msg = new SignupMsg(txtName.Text.Trim(), Pwd.Password.Trim()); bw.Write(string.Format("SIGNUP@{0}", TalkHelper.HandleHelper.XMLSer <SignupMsg>(msg))); bw.Flush(); } else { MessageBox.Show("两次密码不一致"); } } else { MessageBox.Show("所有空都需填写"); } }