Mam następujący kod, który po uruchomieniu zapisuje wartość ciągu prawdą, jak widać tutaj: Wpisz opis obrazu tutaj

Oto kod:

currentSetting = AppSession.Repository.Settings.Find(SettingQuery.ID == new ID("IsUsersLockedOut"));
            currentSetting[0].Value = true.ToString(); 
            AppSession.Repository.Settings.Save(currentSetting[0]);

Moje pytanie dzisiaj jest w jaki sposób mogłem uzyskać wartość logiczną z powrotem zamiast wartości łańcuchowej, oczekiwany wynik powinien być po zapisanym, wartość == 1, zamiast ciągłego ciągu na obrazku powyżej. Dziękuję wam wszystkim.

0
John Vasquez 18 marzec 2020, 16:18

1 odpowiedź

Najlepsza odpowiedź

Mnóstwo sposobów, aby to zrobić, oto kilka:

    string boo = "true";

    bool b1 = Convert.ToBoolean(boo);
    bool b2 = bool.Parse(boo);
    bool b3 = bool.TryParse(boo, out var bParsed) && bParsed;
    bool b4 = boo.Equals("true", StringComparison.OrdinalIgnoreCase);

Pierwsze dwa będą eksplodować, jeśli non bool zostanie przekazany. Trzeci zwraca prawdę tylko wtedy, gdy coś niezabezpieczonego logiczne zostało przekazane inaczej fałszywe, a czwarte zwraca prawdę tylko wtedy, gdy niektóre wersja słowa prawda została przekazana inaczej fałszywy

1
Caius Jard 18 marzec 2020, 16:31