1
나는 다음과 같은 허브 클래스있다 :공공 작업 연결은()
public class Dashboard : Hub, IDisconnect, IConnected
{
//Initialize Repoisotries
private IProfileRepository profileRepository;
private ISiteDataRepository siteDataRepository;
private readonly IHubContext matchContext = GlobalHost.ConnectionManager.GetHubContext<MatchMaker>();
//Constructor Injection for profile repository and site data repository
public Dashboard(IProfileRepository repo, ISiteDataRepository siteRepo)
{
profileRepository = repo;
siteDataRepository = siteRepo;
}
public Task Disconnect()
{
return null;
}
public Task Reconnect(IEnumerable<string> connections)
{
return null;
}
public Task Connect()
{
Debug.WriteLine(MatchMaker.onlineUsers.Count);
return null;
}
public void GetUserInfo()
{
Debug.WriteLine(MatchMaker.onlineUsers.Count);
}
}
} 나는 signalr이
은 다음과 같습니다
<script src="@Url.Content("~/signalr/hubs")" type="text/javascript"></script>
I 액세스 좋아해 :
$(function() {
//Create the proxy
var Dashboard = $.connection.dashboard;
$.connection.hub.start(function() {
Dashboard.getUserInfo();
});
});
Dashboard.getUserInfo()
을 호출하면 메서드가 find라는 메서드를 호출하지만 Connect()
메서드는 처음에는 실행되지 않습니다. didnt한다 당신이 연결을 활성화하기 위해 거기에 클라이언트 기능을 필요로 알고,
$(function() {
//Create the proxy
var Dashboard = $.connection.dashboard;
Dashboard.someMethod = function(message){
}
$.connection.hub.start(function() {
Dashboard.getUserInfo();
});
});
내 Connect()
기능이 발사 시작 :
예 적어도 하나의 구독이 필요합니다. "최적화"되어있어 필요하지 않은 허브에 가입하지 않게됩니다. – davidfowl
나는이 머리 위로 머리를 터뜨 렸습니다. 아마도 이것은 위키에 추가 될 수 있습니까? – Lodewijk