मैंने सीखना शुरू किया कि रेजर पेज कैसे काम करते हैं, ट्यूटोरियल ऑनगेट और ऑनपोस्ट का उल्लेख करते हैं, और यह भी उल्लेख करते हैं कि हमारे पास एसिंक विकल्प भी हैं: ऑनगेटएसिंक और ऑनपोस्टएसिंक। लेकिन वे इस बात का उल्लेख नहीं करते कि वे कैसे काम करते हैं, जाहिर है कि वे अतुल्यकालिक हैं, लेकिन कैसे? क्या वे AJAX का उपयोग करते हैं?

public void OnGet()
{
}


public async Task OnGetAsync()
{
}
6
marcos.borunda 19 अक्टूबर 2018, 18:40

1 उत्तर

सबसे बढ़िया उत्तर

OnGet और OnGetAsync के बीच कोई वास्तविक अंतर नहीं है। OnGetAsync एसिंक्रोनस कोड वाली विधियों के लिए केवल एक नामकरण परंपरा है जिसे GET अनुरोध किए जाने पर निष्पादित किया जाना चाहिए। आप Async प्रत्यय को छोड़ सकते हैं लेकिन फिर भी विधि को अतुल्यकालिक बना सकते हैं:

public async Task OnGet()
{
    ...
    await ....
    ...
}

एसिंक्रोनस विधियां वे हैं जो निष्पादन के दौरान अपने धागे को मुक्त करती हैं ताकि निष्पादन के परिणाम उपलब्ध होने तक इसका उपयोग किसी अन्य चीज़ के लिए किया जा सके। आप इस बारे में अधिक पढ़ सकते हैं कि एसिंक्रोनस तरीके कैसे काम करते हैं: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/#BKMK_WhatHappensUnderstandinganAsyncMethod

आपके पास एक ही रेजर पेज में एक Onget और एक OnGetAsync हैंडलर नहीं हो सकता। ढांचा उन्हें एक जैसा देखता है।

3
Mike Brind 19 अक्टूबर 2018, 18:58