public bool addFriend(Friend fr) { string cmdString = "INSERT TO friend VALUES("+ fr.UserId+","+ fr.UserName+","+ fr.Sex+","+ fr.Age+","+ fr.Birthday+","+ fr.Remark+","+ fr.Address+","+ fr.Time+","+ fr.MGroupId+");"; SQLiteCommand cmdAddFriend = new SQLiteCommand(cmdString, conn); cmdAddFriend.ExecuteNonQuery(); cmdAddFriend.Dispose(); return true; }
private void btn_yes_Click(object sender, EventArgs e) { if(radioBtn_agree.Checked==true) { //把好友存进数据库 Friend fr = new Friend(); fr.UserId = userInfo[0]; fr.UserName = userInfo[1]; fr.Sex = Convert.ToInt32(userInfo[2]); fr.Birthday = userInfo[3]; fr.Address = userInfo[4]; fr.Time = userInfo[5]; FriendDB Fdb = FriendDB.OpenDB(myInfo.ID.ToString()); Fdb.addFriend(fr); rapidPassiveEngine.CustomizeOutter.Send(Constant.MSG_ADDFRIEND_AGREE, System.Text.Encoding.UTF8.GetBytes(soucerUserId)); this.Close(); } else//拒绝 { this.Close(); } }
public List<Friend> queryFriends() { string cmdString = "SELECT * FROM friend"; List<Friend> ls = new List<Friend>(); conn.Open(); SQLiteCommand cmd = new SQLiteCommand(cmdString, conn); SQLiteDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { Friend fr=new Friend(); fr.UserId = dr[0].ToString(); fr.UserName = dr[1].ToString(); fr.Sex =Convert.ToInt32(dr[2]); fr.Age = Convert.ToInt32(dr[3]); fr.Birthday = dr[4].ToString(); fr.Remark = dr[5].ToString(); fr.Address = dr[6].ToString(); fr.Time = dr[7].ToString(); fr.MGroupId = Convert.ToInt32(dr[8]); ls.Add(fr); } conn.Close(); return ls; }
/// <summary> /// 处理接收到的信息(包括大数据块信息)。 /// </summary> /// <param name="sourceUserID">发出信息的用户ID。如果为null,表示信息来自服务端。</param> /// <param name="informationType">自定义信息类型</param> /// <param name="info">信息</param> public void HandleInformation(string sourceUserID, int informationType, byte[] info) { SysMsg sysmsg = new SysMsg(); switch (informationType) { //文本消息 case Constant.MSGTEXT: //文本消息格式:接收者ID卍发送者ID卍消息内容卍发送时间卍发送人名字 string message = System.Text.Encoding.UTF8.GetString(info); //得到含有5个元素的数组 string[] msgs = Regex.Split(message, Constant.SPLIT, RegexOptions.IgnoreCase); //消息存在msg对象中 Msg msg = new Msg(msgs, 0, 0); try { //按照ID查找listbox中的subItem ChatListSubItem[] items = chatListBox_contacts.GetSubItemsById(Convert.ToUInt32(msgs[1])); //聊天窗口的标题 string windowsName = items[0].NicName + ' ' + items[0].ID; //查找是否已经存在窗口 IntPtr handle = NativeMethods.FindWindow(null, windowsName); //聊天窗口已存在 if (handle != IntPtr.Zero) { msg.IsReaded = 1; Form frm = (Form)Form.FromHandle(handle); //激活 frm.Activate(); //传送消息到聊天窗口 this.OnReceive(msg); } else { //头像闪烁 twinkle(chatListBox_contacts, Convert.ToUInt32(msgs[1])); } //消息存入数据库 MsgDB.uniqueInstance.addMsg(msg); } catch { MsgDB.uniqueInstance.addMsg(msg); } break; //处理图片 case Constant.MSGIMG: MsgImg msgimg = ImageUtil.bytesToIdImg(info); //存储图片 ImageUtil.ImgSave(msgimg.Id, msgimg.Img); break; case Constant.MSG_ADDFRIEND_APPLY: string infostr = System.Text.Encoding.UTF8.GetString(info); //info格式:ID卍昵称卍性别卍生日卍地址卍注册时间 sysmsg.Content = infostr; sysmsg.Type = Constant.MSG_ADDFRIEND_APPLY; SystemMsgDB.instance.addSystemMsg(sysmsg.Content, sysmsg.Type);//存入数据库 break; case Constant.MSG_ADDFRIEND_AGREE: //info格式:ID卍昵称卍性别卍生日卍地址卍注册时间 string userInfo= System.Text.Encoding.UTF8.GetString(info); //分割info string[] userInfos = Regex.Split(userInfo, Constant.SPLIT, RegexOptions.IgnoreCase); //把消息存进数据库 sysmsg.Content = userInfo; sysmsg.Type = Constant.MSG_ADDFRIEND_AGREE; SystemMsgDB.instance.addSystemMsg(sysmsg.Content, sysmsg.Type); //把好友存进数据库 Friend fr=new Friend(); fr.UserId=userInfos[0]; fr.UserName=userInfos[1]; fr.Sex=Convert.ToInt32(userInfos[2]); fr.Birthday=userInfos[3]; fr.Address=userInfos[4]; fr.Time=userInfos[5]; FriendDB.uniqueInstance.addFriend(fr); //刷新好友列表 displayFriend(); break; } }