2015-12-21 26 views
7

पर संदेश आदेश को संरक्षित करने के लिए कैसे करें मुझे एक समस्या है कि जब मैं सर्वर से क्लाइंट को संदेश भेजता हूं तो वे क्लाइंट पर उनके मूल क्रम में नहीं पहुंचते हैं। मैं एक परीक्षण समारोह यहाँ मिल गया है:सिग्नलआर सर्वर से क्लाइंट

public async Task Hello(string group) 
    { 
     await Groups.Add(Context.ConnectionId, group); 
     await Clients.Group("grp1").Hello("grp1"); 
     await Clients.Group("grp2").Hello("grp2"); 
     await Clients.All.Hello("all"); 
    } 

और ग्राहक पर:

var chanceHub = $.connection.chanceHub; 
chanceHub.client.Hello = function (message) { 
    alert(message); 
} 
$.connection.hub.start().done(function() { 
    chanceHub.server.hello("grp1"); 
}); 

मैं इस क्रम में 2 अलर्ट प्राप्त करने की उम्मीद: "grp1" फिर "सभी" लेकिन मैं हमेशा मिलता है संदेश "सब" पहले। क्या इस मुद्दे को हल करने का कोई तरीका है?

+0

सिग्नलर संदेश आदेश को संरक्षित करेगा। क्या आप सुनिश्चित हैं कि समूह को समूह में जोड़ा जा रहा है? –

+0

@StephenCleary हाँ, ग्राहक grp1 में है। लेकिन ऑर्डर संरक्षित नहीं है और मुझे समझ में नहीं आ रहा है कि क्यों ... समूह के अंदर संदेश ऑर्डर ठीक है, लेकिन जब समूह के बीच मैसेजिंग की बात आती है तो सब कुछ – CodeDemen

उत्तर

5

यह समस्या के लिए एक अनसुलझे समस्या # 3310 है। इस मुद्दे में एक वर्कअराउंड Issue #3310

+2

शफल करता है। यह समस्या चीजों को काम करने के लिए 'प्रतीक्षा' जोड़ने का सुझाव देती है। ओपीएस कोड में पहले से ही 'प्रतीक्षा' है। –

संबंधित मुद्दे