Ich versuche, alle Dateien in einem Verzeichnis iterieren GetFilesAsync verwenden, aber jedes Mal, wenn ich die GetResults Methode aufrufen, wirft es eine Ausnahme, die sagtVerfahren wurde zu einem unerwarteten Zeitpunkt genannt
System.InvalidOperationException: Verfahren bei einer unerwarteten Zeit
Der Code
var files = myStorageFolder.GetFilesAsync(); //runs fine
var results = files.GetResults(); //throws the exception
ich bin neu zu gewinnen 8 dev so dass ich einfach genannt wurde könnte etwas offensichtlich fehlen.
Edit (gelöst) ich meine Konsole-Anwendung ausgeführt wird, aber jetzt, dass das Programm async läuft, besteht die files.GetResult()
Methode nicht mehr.
static void Main(string[] args)
{
var files = GetFiles(myStorageFolder);
var results = files.GetAwaiter().GetResults();//Need to add GetAwaiter()
}
static async Task GetFiles(StorageFolder sf)
{
await sf.GetFilesAsync();
}
Benötige ich 'Using'-Anweisungen, um die' GetAwaiter'-Methode zu verwenden? – user1
@ user1 Ich kann mich nicht erinnern, das ist vor 2 Jahren. Wenn Sie jedoch die Dokumente durchgehen, ist dies die Erweiterungsmethode, die Sie benötigen: ['WindowsRuntimeSystemExtensions.GetAwaiter'] (https://msdn.microsoft.com/en-us/library/hh582011 (v = vs.110) .aspx). Es ist im 'System'-Namespace definiert, also hast du es wahrscheinlich bereits im Bereich – dcastro
Ich bemerkte, dass' GetAwaiter() 'auf einer' Task' war und ich versuchte, es auf einer 'IAwaitableOperation' zu verwenden, also musste ich' aufrufen AsTask' dann 'Results', verdammt' UWP'. Trotzdem danke! – user1