在启动时从文件加载配置

本文关键字:加载 配置 文件 启动 | 更新日期: 2023-09-27 18:09:51

我试图在启动时加载一些数据(从配置文件)。在win10 uwp中访问文件的唯一方法是使用async方法。

不错,但是:

我怎么能在构造函数中调用异步方法(这是不可能的,我知道)或任何等效的。以下是我的实际代码:

sealed partial class App : Application
{
    public ITrackThatContext Context { get; private set; }        
    public App()
    {
        this.InitializeComponent();
        this.Suspending += OnSuspending;
        Context = await LocalFileTrackThatContext.CreateAsync(null);
    }
}

我可以从应用程序第一页的按钮调用Context = await LocalFileTrackThatContext.CreateAsync(null);,但我相信还有更好的办法。是否有从启动进程启动任务的入口点。我读了启动阶段,但我不知道在哪里加载我的conf.

在启动时从文件加载配置

虽然可能有其他地方,但最方便的是在您加载的第一页的OnNavigatedTo方法。

编辑:如果你需要这样做只是一次,你可以有一个页面只有Frame里面,你然后导航到其他页面。或者您可以在某个地方存储bool值,无论操作是否完成,并根据该值进行操作。

定义一个回调方法并提供给Task.ContinueWith():

LocalFileTrackThatContext.CreateAsync(null).ContinueWith(contextLoaded);

在这种情况下,构造函数的其余部分应该假设Context尚未设置——任何需要等待Context已知的事情都将在回调中发生。

回调方法被传递了一个Task参数,它可以从中获得。result和。status。