布尔值设置为true后返回false

时间:2020-02-26 09:18:08

标签: c# xamarin.forms

所以我有一个登录名,并且此显示弹出窗口显示了更多的内容,所以我的逻辑是

创建一个bool并检查其true / False,然后显示弹出窗口

因此用户可以正确登录它导航到主页和

 MainPage.justloggedin = false;

在主页上

 public static bool justloggedin { get; set; } = true; 
 if (justloggedin != true)
 {
    DisplayAlert("Logged in", "Login Process Complete. Welcome", "OK");
    justloggedin = true;
 }

它会显示一次,如果您转到另一页又返回,它将再次显示,然后在第二次显示后再也不会显示。

我听不懂...。

登录:

private void Login_Phase2()
        {
            try
            {
                foreach (var user in list)
                {

                    if (user.username == Usernamelabel.Text)
                    {
                        if (Usernamelabel.Text = "TesterDetail")
//This is just for one single Testing account They cant see prices
                        {
                            GlobalVariable.Tester = true;
                            Preferences.Set("CId", user.id.ToString());
                            if (WpApiCredentials.token != null) 
                            Preferences.Set("Token", 
                            WpApiCredentials.token);

                            Application.Current.MainPage = new Home();
                            MainPage.justloggedin = false;

                            Preferences.Set("CUsername", user.username);
                            Preferences.Set("CEmail", user.email);
                            LoggedIn = true;
                            Application.Current.SavePropertiesAsync();
                        }
                        else
                        {
                            GlobalVariable.Tester = false;
                            Preferences.Set("CId", user.id.ToString());
                            if (WpApiCredentials.token != null) 
                            Preferences.Set("Token", 
                            WpApiCredentials.token);
                            Application.Current.MainPage = new Home();
                            MainPage.justloggedin = false;

                            Preferences.Set("CUsername", user.username);
                            Preferences.Set("CEmail", user.email);
                            LoggedIn = true;
                            Application.Current.SavePropertiesAsync();
                        }

                    }

                }

            }

            catch (Exception ex)
            {
                Crashes.TrackError(ex);
            }
        }

上面的部分不只是登录,而只是获取正确的客户以从他们那里获取详细信息电子邮件,ID等 安全登录为进程1

注意:如果您想推荐一种更好的方式来曝光客户,以便我可以在那里获取详细信息,请

我在LinQ上遇到的问题也使某些变量加倍,所以回到了尴尬的Foreach

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。

将分享我所做的事情,但我仍在寻找答案的原因。

LoginPhase2(){
 foreach (var user in list)
                {

                    if (user.username == Usernamelabel.Text)
                    {
                        if (Usernamelabel.Text == "TesteDetails")
                        {
                            GlobalVariable.Tester = true;
                            Preferences.Set("CId", user.id.ToString());
                            if (WpApiCredentials.token != null) Preferences.Set("Token", WpApiCredentials.token);

                            App.justloggedin = false;
                            Preferences.Set("CUsername", user.username);
                            Preferences.Set("CEmail", user.email);

                            Application.Current.SavePropertiesAsync();
                        }
                        else
                        {
                            GlobalVariable.Tester = false;
                            Preferences.Set("CId", user.id.ToString());
                            if (WpApiCredentials.token != null) Preferences.Set("Token", WpApiCredentials.token);
                            Application.Current.MainPage = new Home();
                            App.justloggedin = false;
                            Preferences.Set("CUsername", user.username);
                            Preferences.Set("CEmail", user.email);

                            Application.Current.SavePropertiesAsync();
                        }

                    }

                }
                if (App.justloggedin != true)
                {
                    App.justloggedin = true;
                    DisplayAlert("Logged in", "Login Process Complete. Welcome to Mica Market", "OK");
                    Application.Current.MainPage = new Home();
                }
}

相关问题