.NET MAUI で非同期関数を動悸のように動作させたい

実現したいこと

JSONをリードしようとしています
ファイルをResourceからリードしようとしているのですが、非同期関数でリード完了してから次の処理に移りたい

発生している問題・分からないこと

ファイルのリードが完了してから次の処理に移りたいが完了せずに他の処理が走ってしまい、
そちらの処理が終わってから実行が戻ってくる

該当のソースコード

c#

1private async Task foo()2{3using Stream stream = await FileSystem.Current.OpenAppPackageFileAsync("data.json"); // ★ ここが終わらないまま他のメソッドが実行される4using var reader = new StreamReader(stream);5var contents = reader.ReadToEnd();6var data = JsonSerializer.Deserialize<FirmInfo>(contents);7}

試したこと・調べたこと

上記の詳細・結果

Androidだと、順番通りに実行されるがWindowsだと次の処理が走ってしまう
fooの呼び出しにもawaitを付与してみたが、やはり他のメソッドに処理が移ってしまう

補足

awaitで、該当のメソッドが完了するまで待つと思っているのですが何が問題なのかわからないです

コメントを投稿

0 コメント