Я использую signalR вызвать некоторые JavaScript методы с сервера, как так:Вызывающие методы клиента с именем установить во время выполнения
Clients.Client(connectionId).myJSMethodName(params);
Клиент имеет тип динамического поэтому будем называть «myJSMethodName (Params)» функцию с этим точным именем из javascript.
Что я хотел бы сделать, так это назвать имя функции, установленное во время выполнения. Что-то вроде этого:
string myFunction = "helloWorld";
Clients.Client(connectionId)[myFunction](params);
, который будет переводить на
Clients.Client(connectionId).helloWorld(params);
Это не работает, и ни один
Clients.Client(connectionId).myFunction(params);
, так как это будет вызывать функцию с именем «MYFUNCTION» вместо "Привет мир".
Любая помощь будет оценена по достоинству.
'Clients.Client (ConnectionID) [туРипсЫоп] (PARAMS)' должен работать, если вызов 'клиентов .Client (connectionId) 'возвращает объект с функцией в нем. Какую ошибку вы получаете? – Will
Невозможно применить индексирование с [] к выражению типа «Microsoft.AspNet.SignalR.Hubs.ConnectionIdProxy». – osmiumbin