/// <summary> /// Загрузить состояние из кэша или получить стандартное. /// </summary> /// <returns></returns> public static ApiaryXmlState LoadState() { StorageFile file = ApiaryXmlState.GetFileFromLocalCache(); string xml = file != null ? FileIO.ReadTextAsync(file).GetAwaiter().GetResult() : typeof(ApiaryXmlState).GetTypeInfo().Assembly.ReadResourceAsText( ApiaryXmlState.StandardXmlStateResourceName); return(xml.Deserialize <ApiaryXmlState>()); }
/// <summary> /// Сохранить это состояние в кэше приложения. /// </summary> public void SaveInCache() { StorageFile file = ApiaryXmlState.GetFileFromLocalCache() ?? ApiaryXmlState.CreateNewFileInCache(); if (file != null) { FileIO.WriteTextAsync(file, this.Serialize()) .GetAwaiter().GetResult(); } }
/// <summary> /// Очистить кэш - удалить сохраненный файл состояния /// пасеки, если такой файл есть. /// </summary> public static void ClearCache() { ApiaryXmlState.GetFileFromLocalCache()?.DeleteAsync() .GetAwaiter().GetResult(); }