У меня есть один концентратор, использующий связь между пользователями и соединениями в памяти. Этот концентратор имеет два экземпляра ConnectionMapping - один для соединений чата, один для соединений Navbar. Цель:SignalR - Определение QueryStrings из двух разных мест в приложении?
- Когда пользователь находится на любой странице, кроме чата, они будут иметь одно соединения signalR открытого, хранящиеся в navbarConnections
- Когда пользователь в чате, они будут иметь два signalR соединения открыты - один в navbarConnections, один в chatConnections
Эти работы отлично работают независимо друг от друга, но вместе они получают немного глюки. Путь мое приложение структурировано является оболочкой, которая содержит следующие элементы (в layoutVM нокаута ViewModel):
$.connection.hub.qs = {
"isChat": false,
"username": self.emailAddress(),
"baseUrl": self.baseUrl()
};
// define client methods
$.connection.hub.start().done(function() {
// nothing
});
А потом, когда чат загружается внутри оболочки, это определяется (в chatVm нокаута ViewModel) :
$.connection.hub.qs = {
"isChat": true,
"username": self.currentUsername(),
"baseUrl": self.baseUrl()
};
$.connection.hub.start().done(function() {
self.chatIsReady(true);
});
проблема, которую я встретив в том, что строки запроса иногда неправильно, когда вызовы к signalR сделаны из чата - это, кажется, строки запроса, определенных в LayoutVm является переопределяют тех, в ChatVm. Что я могу сделать, чтобы решить эту проблему?
Спасибо Ларс. Я мог бы действительно использовать некоторый обзор кода ... вы доступны для ~ 1 часа платной консультации? Ваша рекомендация поднимает некоторые проблемы, которые я не уверен, как обращаться, мне бы хотелось показать вам, с чем я работаю. – SB2055
вы можете выслать мне электронное письмо (см. Биографию), тогда мы сможем увидеть, можем ли мы это обработать –
Портировано :) Спасибо Lars – SB2055