我需要在程序启动时创建一个数据库/检查它是否存在。
ApplicationData.Current.LocalFolder.GetFileAsync
我的申请无法在此测试完成之前运行。
因此我想将我的呼叫改为同步。
但是,我只看到
cache.drop([overlap_list])
.GetFile不存在。
使呼叫同步的方法是什么?
答案 0 :(得分:1)
您可以使用System.IO
中的.NET API同步读取文件。您可以从StorageFolder.Path
获取LocalFolder
属性,并将路径名称传递给.NET。
FileStream
constructor需要path
和mode
,然后您可以同步或异步读取和写入。
答案 1 :(得分:1)
async没有问题。
如果您执行所有异步操作,例如
private async void DoThis()
{
await SomethingA();
await SomethingB();
return;
}
然后你可以确定在等待SomethingA()之前永远不会调用SomethingB()。
这就是为什么在子程序中执行异步操作后必须执行所有异步操作的原因。