应用程序启动时如何在 Xamarin Forms 中使用异步方法?

Gan*_*gm7 3 c# asynchronous xamarin xamarin.forms

我需要知道应用程序启动时如何在 Xamarin Forms 中使用异步方法?我需要根据情况显示首页。

public App()
        {
            InitializeComponent();

            if (SaveCredential.IpAddress == string.Empty || SaveCredential.PortNo == string.Empty)
            {
                MainPage = new NavigationPage(new Dhoni.IpDetail());
            }

            else if (SaveCredential.IpAddress != string.Empty && SaveCredential.PortNo != string.Empty)
            {
                if (await LoginPage.ConnectionCheck())

                {
                    if (SaveCredential.UserName != string.Empty && SaveCredential.Password != string.Empty)
                    {
                        if (await LoginPage.PasswordCheck(SaveCredential.UserName, SaveCredential.Password))
                        {
                            MainPage = new NavigationPage(new Dhoni.Dashboard());
                        }
                        else
                        {
                            MainPage = new NavigationPage(new Dhoni.LoginPage());
                        }
                    }
                    else if (SaveCredential.UserName == string.Empty || SaveCredential.Password == string.Empty)
                    {
                        MainPage = new NavigationPage(new Dhoni.LoginPage());
                    }

                }
                else
                {
                    MainPage = new NavigationPage(new Dhoni.IpDetail());
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

我在这些行中遇到错误

如果(等待 LoginPage.ConnectionCheck())

if (等待 LoginPage.PasswordCheck(SaveCredential.UserName,SaveCredential.Password))

错误是

“await”运算符只能在异步方法中使用。考虑使用“async”修饰符标记此方法并将其返回类型更改为“Task”。

有人有解决方案吗?

Jas*_*son 7

    protected async override void OnStart()
    {
        base.OnStart();

        // call your async method here
    }
Run Code Online (Sandbox Code Playgroud)