signalR与db mvc4聊天

时间:2013-06-15 01:47:25

标签: database asp.net-mvc-4 chat message signalr

如何设置db来连接两个用户的聊天记录?每个配置文件都有一个收件箱,当您点击聊天时,它会显示与该人聊天的整个历史记录。保存聊天和用户名不是问题,而是将两个用户链接在一起,以便检索正确的聊天就是问题所在。有关的任何教程?第一次编写消息传递系统。

1 个答案:

答案 0 :(得分:0)

您必须将用户ID和连接ID保存到数据库,并保存在该聊天中发送的消息。加载用户收件箱时,您可以使用聊天ID和他们聊天的用户从数据库加载他们过去的聊天记录。当他们点击其中一个时,你可以使用聊天ID和/或用户ID加载他们的聊天记录,做这样的事情(没有经过测试,只是模拟):

public override System.Threading.Tasks.Task OnConnected()
{
    string chatID =  Context.ConnectionId; 
    string history = GetHistory(chatID);

    Clients.Caller.chatHistory(history);
    //you'll need to create a chatHistory handler on the client side.   
}

private string GetHistory(string chatID)
{
    return dbcontext.GetChatHistory(chatID);
}