信号器:如何调用其名称在运行时定义的javascript函数

时间:2014-12-10 17:03:54

标签: javascript c# asp.net signalr

我用谷歌搜索了这个并且无法找到任何相关内容。我想在signalr中调用一个javascript函数,其名称在运行时定义。通常函数调用看起来像这样

NotificationsHub.Clients.User(interestRegistration.UserName).functionName();

我想知道以下内容是否可行:

string functionName = "myFunction";
NotificationsHub.Clients.User(interestRegistration.UserName).callDynamicFunction(functionName);

答案可以在这个堆栈溢出帖子中找到:How can I call a dynamically selected SignalR client method from an IHubContext?

1 个答案:

答案 0 :(得分:0)

如果函数在对象中,则可以访问数组成员等函数,

e.g。

var someObject = {
    theDynamicFunctionHere: function ()
    {
        alert("I am a dynamic function");
    }
};

然后你可以通过这样的变量名称来调用它,

string functionName = "theDynamicFunctionHere";
someObject[functionName]();