Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ext.net并行消息总线_Javascript_Asp.net Mvc 3_Extjs_Ext.net - Fatal编程技术网

Javascript Ext.net并行消息总线

Javascript Ext.net并行消息总线,javascript,asp.net-mvc-3,extjs,ext.net,Javascript,Asp.net Mvc 3,Extjs,Ext.net,当使用SignalR同时调用两个Ext.net MessageBusListeners时,我遇到了一些问题 例如,如果我在SignalR javascript函数中进行广播,如下所示: <script> $(function () { var chat = $.connection.chatHub; chat.client.addNewMessageToPage = function (message) {

当使用SignalR同时调用两个Ext.net MessageBusListeners时,我遇到了一些问题

例如,如果我在SignalR javascript函数中进行广播,如下所示:

 <script>
        $(function () {
              var chat = $.connection.chatHub;
             chat.client.addNewMessageToPage = function (message) {
                console.log('publish: ' + message);
                Ext.net.Bus.publish(message, '');
            };

            // Start the connection.
            $.connection.hub.start().done(function () {
                console.log("start connection");
            });
        });
    </script>
Store().ID("Store1").MessageBusListeners(new MessageBusListener
                     {
                              Name = "message1",
                              Fn = "myJSfunction",
                              Single = true
                     },...)

 Store().ID("Store2").MessageBusListeners( new MessageBusListener()
                     {
                             Name = "message2",
                             Handler = "Ext.Msg.notify('Notification', 'message2);"
                     })  ,...)
我通过信号器广播两个快速呼叫,如:

Ext.net.Bus.publish("message1", '');
Ext.net.Bus.publish("message2", '');
这个测试的问题是第一个MessageBusListener的myJSfunction将被忽略,而第二个Listener的处理程序将被执行。 如果我更改MessageBusListeners的顺序,如下所示:

Ext.net.Bus.publish("message2", '');
Ext.net.Bus.publish("message1", '');
myJSfunction被执行,第一个messageBusListener的处理程序也被执行


这个案子有什么问题?我应该在多个Ext.net.Bus.publish之间同步吗?

我不知道。如果您提供测试用例,我可以进行调查。是否需要信号员再现问题?我认为如果没有这个,它可能是可以复制的。如果可能的话,请在测试用例中去掉signer。即使没有signer,仍然会遇到同样的问题。如果您提供一个独立且可运行的测试用例来重现问题,我可以进行调查。这不是SignaR问题。我在messagebus上面临同样的问题,并且只发布第二个调用。我正试图找到解决方案……亲爱的@Daniel Veriga,我认为重现这个问题非常简单。只需逐个发布消息。谢谢你的时间。