我正在用一个简单的博客发布者试用signalR,但我不确定实现它的最佳实践。
第一个解决方案:让客户端调用服务器上的post方法,后者将依次将数据提供给相关的Web api或其他上传数据的方法。我打算在这里使用已经打开的连接。
public class BlogHub : Hub
{
public void Post(string text)
{
//Internal Webapi call / other method of DB Update.
Clients.All.BroadcastPost(text);
}
}
Run Code Online (Sandbox Code Playgroud)
第二种解决方案:让客户端对Web api进行ajax调用,然后再调用post方法并将其广播回客户端。
public void PostPost(string text) //May have to call this method something different...
{
db.posts.add(new PostModel(text));
db.SaveChanges();
Post(string Text);
}
Run Code Online (Sandbox Code Playgroud)
第三种解决方案:我没想到过的另一种(可能更好)的方法。
第四种解决方案:我可怕地滥用应如何使用signalR。
提前致谢!