private void ChangeSettings(DbSetSettings newSettings, bool cached) { try { var fileName = _fileManager.CombineDirectories(_inDir, FileEngineDefaults.SetSettingsName); var serializer = new XmlSerializer(typeof(DbSetSettings)); using (var sw = new StreamWriter(_fileManager.FileWriteStream(fileName))) { serializer.Serialize(sw, newSettings); sw.Flush(); } } finally { if (cached) { _settingsCached = newSettings; } } }
private static bool WriteToXmlFile(IFileOperations fileManager, string instellingenFile, string maskFile, Instellingen instellingen) { try { // verwijder oude bestand (zelfde effect als overschreven worden) if (fileManager.FileExists(instellingenFile)) fileManager.Delete(instellingenFile); //schrijf instellingen weg var serializer = new XmlSerializer(typeof(Instellingen)); using (var sw = new StreamWriter(fileManager.FileWriteStream(instellingenFile))) { serializer.Serialize(sw, instellingen); sw.Flush(); } //schrijf Masks weg using (var xw = XmlWriter.Create(maskFile, new XmlWriterSettings() { Indent = true })) { xw.WriteStartDocument(); xw.WriteStartElement("Masks"); foreach (var mask in instellingen.Masks) { xw.WriteStartElement("Mask"); xw.WriteStartElement("Name"); xw.WriteString(mask.Name); xw.WriteEndElement(); xw.WriteStartElement("RealName"); xw.WriteString(mask.RealName); xw.WriteEndElement(); xw.WriteEndElement(); } xw.WriteEndElement(); xw.WriteEndDocument(); xw.Flush(); } return true; } catch (PathTooLongException) { return false; } }
private static bool WriteToJsonFile(IFileOperations fileManager, string instellingenFile, string maskFile, Instellingen instellingen) { try { // verwijder oude bestand (zelfde effect als overschreven worden) if (fileManager.FileExists(instellingenFile)) { fileManager.Delete(instellingenFile); } var saveInstellingen = new SaveInstellingen() { DatabasePad = instellingen.DatabasePad, BijbelPad = instellingen.BijbelPad, TemplateTheme = instellingen.TemplateTheme, TemplateLied = instellingen.TemplateLied, TemplateBijbeltekst = instellingen.TemplateBijbeltekst, TekstChar_a_OnARow = instellingen.TekstChar_a_OnARow, TekstFontName = instellingen.TekstFontName, TekstFontPointSize = instellingen.TekstFontPointSize, RegelsPerLiedSlide = instellingen.RegelsPerLiedSlide, RegelsPerBijbeltekstSlide = instellingen.RegelsPerBijbeltekstSlide, Een2eCollecte = instellingen.Een2eCollecte, DeTekstVraag = instellingen.DeTekstVraag, DeLezenVraag = instellingen.DeLezenVraag, GebruikDisplayNameVoorZoeken = instellingen.GebruikDisplayNameVoorZoeken, ToonBijbeltekstenInLiturgie = instellingen.ToonBijbeltekstenInLiturgie, StandaardTeksten = instellingen.StandaardTeksten, ToonGeenVersenBijVolledigeContent = instellingen.ToonGeenVersenBijVolledigeContent, VersOnderbrekingOverSlidesHeen = instellingen.VersOnderbrekingOverSlidesHeen, ToonAlsLiedOnderbrokenWordt = instellingen.ToonAlsLiedOnderbrokenWordt }; //schrijf instellingen weg using (var sw = new StreamWriter(fileManager.FileWriteStream(instellingenFile))) { var serializer = new JsonSerializer(); serializer.Serialize(sw, saveInstellingen); sw.Flush(); } var saveMasks = instellingen.Masks.Select(m => new SaveMask() { Name = m.Name, RealName = m.RealName }).ToArray(); //schrijf Masks weg using (var sw = new StreamWriter(fileManager.FileWriteStream(maskFile))) { var serializer = new JsonSerializer(); serializer.Serialize(sw, saveMasks); sw.Flush(); } return(true); } catch (PathTooLongException) { return(false); } }