首页 > 解决方案 > Xamarin Essentials 首选项和保存列表

问题描述

我正在尝试使用 Xamarin Essentials Preferences 保存值,但是由于我的 SavedList 始终为空,因此出现异常,然后作为异常我有这个未处理的异常:Newtonsoft.Json.JsonReaderException:解析布尔值时出错。路径'',第 1 行,位置 1。但我只是将字符串值传递给保存的列表

private void ExecuteMultiPageCommand(bool value)
    {
      var recognitionProviderSettings = new RecognitionProviderSettings
        {SettingFields = new List<SettingField>()};

      var set = new SettingField()
      {
        ProviderSettingId = "test"
      
      };
  
       AddToList(set.ProviderSettingId);
       NotifyPropertyChanged("IsMultiPage");
    }
public static class Preference
  {
    public static List<string> SavedList
    {
      get
      {
        var savedList = Deserialize<List<string>>(Preferences.Get(nameof(SavedList), "test"));
        return savedList ?? new List<string>();
      }
      set
      {
        var serializedList = Serialize(value);
        Preferences.Set(nameof(SavedList), serializedList);
      }
    }

    static T Deserialize<T>(string serializedObject) => JsonConvert.DeserializeObject<T>(serializedObject);

    static string Serialize<T>(T objectToSerialize) => JsonConvert.SerializeObject(objectToSerialize);

  }

void AddToList(string text)
    {
      var savedList = new List<string>(Preference.SavedList) {text};


      Preference.SavedList = savedList;
    }

标签: xamarin.forms

解决方案


推荐阅读