/// <summary> /// Load current wiki session from file. /// </summary> public void Load(string path) { using (var sw = new StreamReader(path)) using (var jr = new JsonTextReader(sw)) storage = StorageSerializer.Deserialize <WikiEditSession>(jr); ResetWikiClient(); WikiClient.CookieContainer = storage.SessionCookies ?? new CookieContainer(); WikiSites.Clear(); WikiSites.AddRange(storage.WikiSites.Select(s => new WikiSiteViewModel(_EventAggregator, this, s))); }
/// <summary> /// Save current wiki session to file. /// </summary> public void Save(string path) { if (storage == null) { storage = new WikiEditSession(); } // Save settings storage.WikiSites = WikiSites.Select(s => s.GetModel()).ToArray(); storage.SessionCookies = WikiClient.CookieContainer; // Persist using (var sw = new StreamWriter(path)) StorageSerializer.Serialize(sw, storage); }