12
我是使用SignalR(今天开始)的新手,非常简单地向所有连接的客户端发送消息,但现在我只想发送给一个组。我无法找到有关如何在客户端加入的简单文档。如果有人可以帮助,我怎么才能在JavaScript方面加入一个组。谢谢你的帮助。如何使用SignalR加入组
public class EventHub : Hub
{
public void SendNewMedia(MediaInfoViewModel model,Guid eventId)
{
Clients.Group(eventId.ToString()).setupmedia(model);
}
}
//Controller that is sending client new data
var eventHub = GlobalHost.ConnectionManager.GetHubContext<EventHub>();
var result = eventHub.Clients.Group(eventId.ToString()).setupmedia(eventViewer);
//Finally the javascript. Not sure how to setup just for a group
$(function() {
var event = $.connection.eventHub;
event.client.setupmedia = function (newMedia) {
$('#photolist').prepend('<li><img src="' + newMedia.MediaUrl + '" class="img-polaroid span2"/></li>');
};
$.connection.hub.start(function() {
event.server.create(eventID);//I know this is wrong but not sure how to connect
}).done(function() {
alert('conntected. Ready to retrieve data!');
});
});
类。作为Signal R的新手,我很好奇自己加入团队的替代模式是什么?有没有方法可以加入服务器端的客户端,例如它们不是像这样的直接显式交互(JS客户端调用方法的地方)的一部分。如果你有他们的客户ID,然后他们神奇地成为它的一部分,你可以加入一个客户端到服务器端的一个组? PS。这真的不是一个不同的问题 - 如果你(或任何其他人)有任何其他想法,更是如此。 –
组管理只在服务器上完成,所以是的 - 如果你有用户的连接ID,你可以将他添加到任何组。事实上,这就是它应该工作的方式。 –