2013-02-25 63 views
6

में एक Async विधि को कॉल करें मेरे WP8 ऐप में, जब पृष्ठ को नेविगेट किया जाता है तो मैं एक Async विधि को कॉल करना चाहता हूं।विंडोज फोन: ऑननेविगेटेड

मैं async कीवर्ड के साथ OnNavigatedTo विधि अंकन इस तरह होने के लिए के बारे में सोचा:

async protected override void OnNavigatedTo(NavigationEventArgs e) 
     { 
      base.OnNavigatedTo(e); 
      await myAsyncMethod(); 
     } 

वहाँ एक बेहतर दृष्टिकोण इस लक्ष्य को हासिल करने के लिए है, वहाँ async साथ OnNavigatedTo लेबलिंग में एक समस्या है ?

उत्तर

7

नहीं, यह वही है जो आपको करना चाहिए। Asnavigated को async के रूप में चिह्नित करें और उसके बाद जो भी आपको निष्पादित करने की आवश्यकता है उसे निष्पादित करें।

+0

लेकिन अगर myAsyncMethod() को निष्पादित करने में लंबा समय लगता है, तो क्या यह कोई समस्या नहीं होगी? –

+0

जिस तरह से async काम करता है वह यह है कि यह वर्तमान निष्पादन को निलंबित करता है जबकि एसिंक संसाधित किया जा रहा है। एसिंक कार्य एक बहुत ही आसान तंत्र है दुर्भाग्य से आपको इसे पकड़ने के लिए इसे आजमाने की कोशिश करनी है। –