2014-10-27 13 views
8

मैं एक SignalR हब जो निम्नलिखित हब समारोह होते हैं बनाया। कुछ ऐसा:SignalR समारोह वापसी मान

var result = hub.server.getStatus(); 
if (result) 
    alert('success'); 

क्या यह बूल का कार्य लौटाए बिना संभव है?

धन्यवाद।

+0

कार्य लौटने से आपका क्या मतलब है? –

+0

क्या आप इसे कुछ भी वापस करना चाहते हैं? –

+0

कार्य वापस करने का एक विकल्प है, जो पूरी प्रक्रिया async बनाता है। यह मैं क्या टालना चाहता हूँ। – No1Lives4Ever

उत्तर

23

नहीं। सिग्नलआर जावास्क्रिप्ट क्लाइंट गैर-अवरुद्ध है; आपको वादा इंटरफ़ेस का पालन करना होगा, जैसे:

hub.server.getStatus().done(function(result) { 
    if (result) { 
     alert('success'); 
    } 
}); 
2

क्लाइंट पक्ष पर आपको वादे इंटरफ़ेस का उपयोग करने की आवश्यकता होगी। अपनी आवश्यकताओं के अनुसार

तुल्यकालिक

public IEnumerable<Stock> GetAllStocks() 
{ 
     // Returns data from memory. 
     return _stockTicker.GetAllStocks(); 
} 

अतुल्यकालिक

public async Task<IEnumerable<Stock>> GetAllStocks() 
{ 
    // Returns data from a web service. 
    var uri = Util.getServiceUri("Stocks"); 
    using (HttpClient httpClient = new HttpClient()) 
    { 
     var response = await httpClient.GetAsync(uri); 
     return (await response.Content.ReadAsAsync<IEnumerable<Stock>>()); 
    } 
} 

बस सर्वर हस्ताक्षर बदलने के लिए: लेकिन सर्वर साइड पर यह आप पर निर्भर करता है, नीचे दिए गए कोड SignalR गाइड site से है

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