private void InitializeLogger() { try { if (File.Exists(FilePaths.PreferencesFilePath)) { var gxs = new GenericXmlSerializer <PreferencesModel>(); var preferences = gxs.DeSerialize(FilePaths.PreferencesFilePath); var logLevel = preferences.CurrentLogLevel; var logFilePath = preferences.LogFilePath; var isLoggingEnabled = preferences.IsLoggingEnabled; if (logLevel == "DEBUG") { Logger.Initialize(logFilePath, Logger.LogLevels.Debug, isLoggingEnabled); } else if (logLevel == "INFO") { Logger.Initialize(logFilePath, Logger.LogLevels.Info, isLoggingEnabled); } else if (logLevel == "ERROR") { Logger.Initialize(logFilePath, Logger.LogLevels.Error, isLoggingEnabled); } } else { Logger.Initialize(FilePaths.DefaultLogFilePath, Logger.LogLevels.Info, true); } } catch (Exception e) { MessageBox.Show(e.Message, "An error occured while initializing the logger", MessageBoxButton.OK, MessageBoxImage.Error); } }
public YandexMoneyClient(GenericXmlSerializer xmlSerializer, PKCS7Coder pkcs7coder, PemPacker pemPacker, Uri baseUri, WebRequestHandler handler) : base(handler) { this.xmlSerializer = xmlSerializer; this.pkcs7coder = pkcs7coder; this.pemPacker = pemPacker; this.baseUri = baseUri; }
private void butSave_Click(object sender, EventArgs e) { if (r.vechile_list == null || r.vechile_list.Count == 0) { MessageBox.Show("Список пуст", "ОШИБКА"); return; } GenericXmlSerializer.WriteObject(r, "file.xml"); MessageBox.Show("Сохранено в файл file.xml", "УСПЕХ"); }
public void SerializeDispatchMasters(string Path, List <DispatchMaster> DispatchMasters) { try { GenericXmlSerializer <List <DispatchMaster> > .Serialize(DispatchMasters, Path); } catch (Exception ex) { throw ex; } }
public List <DispatchMaster> DeserializeDispatchMasters(string Path) { try { return(GenericXmlSerializer <List <DispatchMaster> > .Deserialize(Path)); } catch (Exception ex) { throw ex; } }
public void SerializeDispatchDetailss(string Path, List <DispatchDetails> DispatchDetailss) { try { GenericXmlSerializer <List <DispatchDetails> > .Serialize(DispatchDetailss, Path); } catch (Exception ex) { throw ex; } }
private static async Task <List <Card> > LoadCardsFromFileAsync(string fileName) { #if NETFX_CORE // On NETFX_CORE we need to append the assembly name to get deployed resources fileName = fileName.TrimStart('.', '\\', '/'); fileName = System.IO.Path.Combine(typeof(Cards).GetTypeInfo().Assembly.GetName().Name, fileName); #endif using (var stream = await FileUtility.OpenApplicationStreamAsync(fileName).ConfigureAwait(false)) { return(GenericXmlSerializer.Deserialize <List <Card> >(stream)); } }
private void MainForm_Shown(object sender, EventArgs e) { FileInfo IfExist = new FileInfo(ConfigReaderWriter.CONFIG_FILE); DirectoryInfo DirExist = new DirectoryInfo(IfExist.DirectoryName); if (!(DirExist.Exists)) { DirExist.Create(); } FontSkinManager(); if (!(IfExist.Exists)) { Setting Frm = new Setting(); Frm.ShowDialog(this); } VarGlobale.LoadParam(); if (string.IsNullOrEmpty(VarGlobal.Password) == true) { Setting Frm = new Setting(); Frm.ShowDialog(this); } CmBxPrjName.Items.Clear(); CmBxPrjName.Items.AddRange(VarGlobale.SubProject.ToArray()); CmBxPrjName.Text = VarGlobal.PrefixUserName; if (VarGlobale.AutoCheckUpdate == true) { checkUpdateToolStripMenuItem.Image = CheckUpdate.CheckIt(); //checkUpdateToolStripMenuItem.Image = CheckUpdate.IcoUpdate; } try { if (File.Exists(VarGlobale.BookMarks)) { CmBxPrjName.AutoCompleteCustomSource = (AutoCompleteStringCollection) GenericXmlSerializer.Deserialize(VarGlobale.BookMarks, CmBxPrjName.AutoCompleteCustomSource.GetType()); foreach (string item in CmBxPrjName.AutoCompleteCustomSource) { AddABookmark(item); } } } catch (Exception Ex) { if (!VarGlobal.LessVerbose) { Console.WriteLine("{0}{1}{2}", Ex.Message, Environment.NewLine, Ex.StackTrace); } } }
/// <summary> /// /// </summary> public static async Task <MainViewModel> LoadDefault() { try { using (Stream stream = await FileUtility.OpenApplicationStreamAsync(@"\DominionCore.Universal\Resources\DefaultPickerView.xml")) { return(GenericXmlSerializer.Deserialize <MainViewModel>(stream)); } } catch (Exception e) { AppLog.Instance.Log("Unable to load view model:" + e.Message); throw; } }
private void butLoad_Click(object sender, EventArgs e) { race _r = GenericXmlSerializer.ReadObject <race>("file.xml"); if (_r != null) { r = _r; MessageBox.Show("Список загружен из файла file.xml", "УСПЕХ"); RefreshLB(); } else { MessageBox.Show("Не удалось загрузит список из файла.\nВозможно файл пуст", "ОШИБКА"); } }
public T TestSerialization <T>(T value) where T : class { string serializedValue = GenericXmlSerializer.Serialize(value); Debug.WriteLine($"Serialized Value: {serializedValue}"); T deserializedValue = GenericXmlSerializer.Deserialize <T>(serializedValue); if (value != null) { Assert.IsNotNull(deserializedValue); } return(deserializedValue); }
public override void InitConfig() { ResourceMgr.Instance.LoadResource("Config/Main", ((resource, b) => { TextAsset s = resource.UnityObj as TextAsset; // Debug.Log(string.Format("<color=#ffffffff><---{0}-{1}----></color>", s.text, "test1")); LoginConfig loginConfig = GenericXmlSerializer.ReadFromXmlString <LoginConfig>(s.text); serverIP = loginConfig.serverIP; serverPort = loginConfig.serverPort; //读取Login配置 GlobalDispatcher.Instance.Dispatch(GlobalEvent.OnLoginConfigLoadDone); // Debug.Log(serverIP + ":" + serverPort); })); }
private void FavoriteSettingsListBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (e.AddedItems.Count > 0) { // Make a copy of the settings, so we don't overwrite them var newSettings = (e.AddedItems[0] as FavoriteSetting).Value; newSettings = GenericXmlSerializer.Deserialize <SettingsViewModel>(GenericXmlSerializer.Serialize(newSettings)); // HACK: Currently the filtered cards is part of the settings instead of it's own // property and/or view model thing, so we have to 'save' it when we load the // settings from the list otherwise we risk losing any cards they've filtered // when they use a built in favorite settings. newSettings.FilteredCards = this.MainView.Settings.FilteredCards; this.MainView.Settings = newSettings; this.FavoriteSettingsListBox.SelectedItem = null; this.Create(); } }
private void OnLoad(Resource res, bool succ) { if (succ) { TextAsset asset = res.UnityObj as TextAsset; if (asset != null) { string t = asset.text; // UnityEngine.Debug.Log(t); ViewList co1 = GenericXmlSerializer.ReadFromXmlString <ViewList>(t); for (int i = 0; i < co1.viewCos.Count; i++) { viewconfigs.Add(co1.viewCos[i].viewName, co1.viewCos[i]); // UnityEngine.Debug.LogError(string.Format("viewconfig--name:{0}+type:{1}+close:{2}", co1.viewCos[i].viewName, co1.viewCos[i].viewtype, co1.viewCos[i].closeType)); } } GlobalDispatcher.Instance.Dispatch(GlobalEvent.OnDataConfigLoadDone); } }
/// <summary> /// Tries the load the job settings from the specified path. /// </summary> /// <param name="path">The path to the file with the serialized setzings.</param> /// <exception cref="CorruptSaveFileException">The save file is in an invalid state.</exception> /// <exception cref="ITunesNotOpenedException">The iTunes process is not started..</exception> /// <returns> /// The result of the operation. /// </returns> public static IEnumerable <JobSetting> LoadJobSettings(string path) { IEnumerable <JobSetting> settings; try { settings = GenericXmlSerializer.DeserializeCollection <JobSetting>(path); } catch (InvalidOperationException ex) { throw new CorruptSaveFileException("The save file is corrupt.", ex); } if (settings.Any(setting => setting.FirstFileSystemSetting is ITunesFileSystemSetting && !DataController.IsITunesOpened())) { throw new ITunesNotOpenedException("iTunes is not opened."); } return(settings); }
public void Save() { try { AppLog.Instance.Log("Saving picker state..."); if (UseIsolatedStorage) { using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) { using (Stream stream = store.OpenFile(PickerStateFileName, FileMode.Create)) { GenericXmlSerializer.Serialize(stream, this); //GenericContractSerializer.Serialize(stream, this); } } } } catch (IsolatedStorageException e) { AppLog.Instance.Error("Unable to save picker state.", e); } }
private void OnLoad(Resource res, bool succ) { if (succ) { TextAsset asset = res.UnityObj as TextAsset; if (asset != null) { string t = asset.text; Debug.Log(string.Format("<color=#ffffffff><---{0}-{1}----></color>", t, "test1")); ViewPathList vl1 = GenericXmlSerializer.ReadFromXmlString <ViewPathList>(t); for (int i = 0; i < vl1.viewURLs.Count; i++) { URLs.Add(vl1.viewURLs[i].ID, vl1.viewURLs[i].URL); //Debug.Log(vl1.viewURLs[i].ID+":" +vl1.viewURLs[i].URL); } } GlobalDispatcher.Instance.Dispatch(GlobalEvent.OnLoadURLConfig); } }
public void WriteFromXml(string directoryPath, string fileExtension, string destination, int[] propertyIndexes, bool isIgnore, bool displayHeaders, bool needPreprocessing) { var filePaths = Directory.GetFiles(directoryPath, fileExtension, SearchOption.AllDirectories); if (filePaths.Length > 0) { using (var sw = new StreamWriter(destination)) { _gxs = new GenericXmlSerializer <T>(); if (displayHeaders) { var obj = _gxs.DeSerialize(filePaths[0]); sw.WriteLine(obj.GetHeaders(_seperator)); } foreach (var filePath in filePaths) { var obj = _gxs.DeSerialize(filePath); sw.WriteLine(obj.ToCsv(propertyIndexes, isIgnore, needPreprocessing, _seperator)); } } } }
private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { foreach (TabPage item in tabControl1.TabPages) { try { if (item.Name != "TabPgMain") { ((Ctrl.BuildPkg)item.Controls[0]).CancelTrafic(); } } catch (Exception Ex) { if (!VarGlobal.LessVerbose) { Console.WriteLine(Ex.Message); } } BckGrdWorkerDll.CancelAsync(); } try { if (CmBxPrjName.AutoCompleteCustomSource.Count > 0) { GenericXmlSerializer.Serialize(CmBxPrjName.AutoCompleteCustomSource, VarGlobale.BookMarks); } } catch (Exception Ex) { if (!VarGlobal.LessVerbose) { Console.WriteLine("{0}{1}{2}", Ex.Message, Environment.NewLine, Ex.StackTrace); } } Application.ExitThread(); this.Dispose(true); }
public void SavePreferences(object obj) { Logger.GetInstance().Debug("SavePreferences() >>"); try { var gxs = new GenericXmlSerializer <PreferencesModel>(); gxs.Serialize(CurrentPreferences, FilePaths.PreferencesFilePath); SharedEventHandler.GetInstance().RaiseOnPreferencesSaved(CurrentPreferences); WindowManager.GetInstance().CloseWindow(ViewID); } catch (Exception e) { Logger.GetInstance().Error(e.ToString()); MessageBox.Show(e.Message, "An error occured while saving preferences", MessageBoxButton.OK, MessageBoxImage.Error); } Logger.GetInstance().Debug("<< SavePreferences()"); }
public static SaveResult SaveAs(DocumentModel document, string style) { Logger.GetInstance().Debug("SaveAs() >>"); try { var saveDialog = new SaveFileDialog { CreatePrompt = true, OverwritePrompt = true, Title = "Save a PMD file", Filter = "Project Markdown File | *.pmd" }; var result = saveDialog.ShowDialog(); if (result != null) { if (result == true) { var tempFolder = FolderPaths.TempFolderPath + "\\" + saveDialog.SafeFileName + "_temp"; if (Directory.Exists(tempFolder)) { Directory.Delete(tempFolder, true); } var parentFolder = Directory.CreateDirectory(tempFolder).FullName; var mp = new MarkdownParser(); // Generate HTML var html = mp.Parse(document.Markdown, style); var markdownFileName = saveDialog.SafeFileName + ".md"; var markdownFilePath = parentFolder + "\\" + markdownFileName; var htmlFileName = saveDialog.SafeFileName + ".html"; var htmlFilePath = parentFolder + "\\" + htmlFileName; var xmlFileName = saveDialog.SafeFileName + ".xml"; var metadataFilePath = parentFolder + "\\" + xmlFileName; // Generate MD file using (var sw = new StreamWriter(markdownFilePath)) { sw.Write(document.Markdown); } // Generate HTML file using (var sw = new StreamWriter(htmlFilePath)) { sw.Write(html); } document.FilePath = saveDialog.FileName; // Generate XML file document.Metadata.FileName = saveDialog.SafeFileName; document.Metadata.IsNew = false; var gxs = new GenericXmlSerializer <DocumentMetadata>(); gxs.Serialize(document.Metadata, metadataFilePath); // Generate the package if (File.Exists(document.FilePath)) { File.Delete(document.FilePath); } ZipFile.CreateFromDirectory(parentFolder, saveDialog.FileName); // Update the view var saveResult = new SaveResult { FileName = saveDialog.SafeFileName, Source = htmlFilePath.ToUri(), TempFile = tempFolder }; Logger.GetInstance().Debug("<< SaveAs()"); return(saveResult); } } Logger.GetInstance().Debug("<< SaveAs()"); return(null); } catch (Exception e) { throw e; } }
static void Main(string[] args) { Console.WriteLine("Лабораторная работа 12, вариант 2"); Console.WriteLine("---------------------------------------------------------------"); Console.WriteLine("Потребление выносливости лошадьми и потребление топлива машиной\nуказываются в % от максимума на единицу массы\n"); Console.WriteLine("(Например: 0.01 - это 1 % от максимального количества\nтоплива / выносливости за каждую единицу массы.\nТогда при массе 10 машина будет тратить 10 % топлива за каждый пройденный км)\n"); Console.WriteLine("Потребление выносливости каждой лошадью будет поделено\nна количество лошадей в повозке"); Console.WriteLine("---------------------------------------------------------------"); Console.WriteLine("Для того чтобы начать гонку, добавьте нескольких участников"); race r = new race(); char ch; int num; while (true) { Console.WriteLine("---------------------------------------------------------------------------"); Console.WriteLine("Введите 1 - чтобы добавить машину, 2 - повозку, 0 - начать гонку"); Console.WriteLine("Введите 3 - чтобы удалить транспортное средство"); Console.WriteLine("Введите 4 - чтобы вывести список транспортных средств"); Console.WriteLine("Введите 5 - чтобы загрузить список участников гонки В файл"); Console.WriteLine("Введите 6 - чтобы загрузить список участников гонки ИЗ файла"); ch = Convert.ToChar(Console.ReadLine()); switch (ch) { case '1': r.add_vechile(new car(enter_mass(), enter_fuel(), enter_speed())); break; case '2': r.add_vechile(new carriage(enter_horses(), enter_mass(), enter_speed())); break; case '3': Console.WriteLine("Введите номер транспортного средства для удаления в списке"); num = Convert.ToInt32(Console.ReadLine()); if (r.vechile_list.Count < num || num <= 0) { continue; } r.remove_vechile(num - 1); break; case '4': print_vechile_list(r.vechile_list); break; case '5': { if (r.vechile_list == null || r.vechile_list.Count == 0) { Console.WriteLine("Список пуст"); continue; } GenericXmlSerializer.WriteObject(r, "file.xml"); } break; case '6': { race _r = GenericXmlSerializer.ReadObject <race>("file.xml"); if (_r != null) { r = _r; print_vechile_list(r.vechile_list); } else { Console.WriteLine("Не удалось загрузит список из файла. Возможно файл пуст"); } } break; case '0': List <vechile> vec = new List <vechile> { }; List <double> distances = new List <double> { }; double dist; if (r == null || r.vechile_list == null || r.vechile_list.Count == 0) { Console.WriteLine("Невозможно начать гонку, список участников пуст"); continue; } Console.WriteLine("Введите дистанцию гонки"); dist = Convert.ToDouble(Console.ReadLine()); r.start(dist, ref vec, ref distances); print_vechile_list(vec, distances); break; default: continue; } } }
public static SaveResult Save(DocumentModel document, string style) { Logger.GetInstance().Debug("Save() >>"); try { if (!Directory.Exists(document.Metadata.FilePath + "_temp")) { var parentFolder = Directory.CreateDirectory(document.Metadata.FilePath + "_temp").FullName; var mp = new MarkdownParser(); // Generate HTML var html = mp.Parse(document.Markdown, style); var markdownFileName = document.Metadata.FileName + ".md"; var markdownFilePath = parentFolder + "\\" + markdownFileName; var htmlFileName = document.Metadata.FileName + ".html"; var htmlFilePath = parentFolder + "\\" + htmlFileName; var xmlFileName = document.Metadata.FileName + ".xml"; var metadataFilePath = parentFolder + "\\" + xmlFileName; // Generate MD file using (var sw = new StreamWriter(markdownFilePath)) { sw.Write(document.Markdown); } // Generate HTML file using (var sw = new StreamWriter(htmlFilePath)) { sw.Write(html); } // Generate XML file document.Metadata.FilePath = document.Metadata.FilePath; document.Metadata.FileName = document.Metadata.FileName; document.Metadata.IsNew = false; var gxs = new GenericXmlSerializer <DocumentMetadata>(); gxs.Serialize(document.Metadata, metadataFilePath); // Generate the package if (File.Exists(document.Metadata.FilePath)) { File.Delete(document.Metadata.FilePath); } ZipFile.CreateFromDirectory(parentFolder, document.Metadata.FilePath); // Update the view var saveResult = new SaveResult { FileName = document.Metadata.FileName, Source = htmlFilePath.ToUri(), TempFile = document.Metadata.FilePath + "_temp" }; Logger.GetInstance().Debug("<< Save()"); return(saveResult); } throw new Exception("Temporary directory already exists"); } catch (Exception e) { throw e; } }
public static IRPacket LoadSignal(string fileName, string deviceName, string signalName, out string message) { /* * xml-файл может быть одной из четырех вещей: * * 1. IRPacket (скорее всего, поскольку предыдущие версии только понимали этот формат) * * 2. AVDeviceDB (требуется устройство и параметры сигнала) * * 3. AVDevice (требуется опция сигнала) * * 4. Некоторые другие XML-формат */ var result = GenericXmlSerializer <IRPacket> .FromFile(fileName); if (result.Successful) { message = string.Empty; return(result.Object); } else { var haveDeviceName = !string.IsNullOrEmpty(deviceName); var haveSignalName = !string.IsNullOrEmpty(signalName); if (result.EncounteredType == "AVDeviceDB") { if (haveDeviceName && haveSignalName) { var db = GenericXmlSerializer <AVDeviceDB> .FromFile(fileName).Object; var device = db.AVDevices.FirstOrDefault(d => string.Equals(d.Name, deviceName, StringComparison.InvariantCultureIgnoreCase)); if (device != null) { var signal = device.GetSignal(signalName); message = signal == null ? "Couldn't find signal " + signalName : string.Empty; return(signal); } else { message = "Couldn't find device " + deviceName; } } else { message = "Вложенный XML-файл содержит набор устройств и сигналов. Вы должны указать параметры -device и -signal для идентификации используемого сигнала"; } } else if (result.EncounteredType == "AVDevice") { if (haveSignalName) { var device = GenericXmlSerializer <AVDevice> .FromFile(fileName).Object; var signal = device.GetSignal(signalName); message = signal == null ? "Couldn't find signal " + signalName : string.Empty; return(signal); } else { message = "Вложенный файл xml содержит набор сигналов. Вы должны указать параметр -signal для определения используемого сигнала"; } } else { message = string.Format("Не удалось загрузить " + fileName + ". Файлы xml должны содержать AVDeviceDB, AVDevice или IRPacket. Найдено " + result.EncounteredType); } } return(null); }
/// <summary> /// Saves the job settings to the specified path. /// </summary> /// <param name="settings">The settings.</param> /// <param name="path">The path.</param> public static void SaveJobSettings(IEnumerable <JobSetting> settings, string path) { GenericXmlSerializer.SerializeCollection(settings.ToList(), path); }
static void Main(string[] args) { try { var certificatePath = args[0]; var password = args[1]; var uriStr = args[2]; var agentId = args[3]; var command = args[4]; var tablePath = args[5]; string requestId = ""; if (args.Length > 6) { requestId = args[6]; } var xmlSerializer = new GenericXmlSerializer(); var pemPacker = new PemPacker(); var certificate = new X509Certificate2(certificatePath, password); var pkcs7Coder = new PKCS7Coder(certificate); var uri = new Uri(uriStr); var handler = new WebRequestHandler(); handler.ClientCertificates.Add(certificate); using (var client = new YandexMoneyClient(xmlSerializer, pkcs7Coder, pemPacker, uri, handler)) { //var response = client.TestDepositionRequest(new TestDepositionRequest() //{ // AgentId = 203598, // DstAccount = "410019806982007", // Amount = "10.00", // ClientOrderId = Guid.NewGuid().ToString(), // DepositionPointId = "29", // Currency = "643", // Contract = "Зачисление на кошелек", // RequestDT = DateTime.Now //}); //Console.WriteLine(response.Error); //Console.WriteLine(response.Identification); //Console.WriteLine(response.Status); //Console.WriteLine(response.TechMessage); //Console.ReadLine(); if (command == "check") { var checkDepositionPointRequest = new CheckDepositionPointsRequest() { AgentId = long.Parse(agentId), RequestId = requestId }; var result = client.CheckDepositionPointsRequest(checkDepositionPointRequest); Console.WriteLine(result.Status); Console.WriteLine(result.RequestId); if (result.Error != null) { Console.WriteLine(result.Error.Code); Console.WriteLine(result.Error.PointId); } Console.WriteLine(); foreach (var item in result.Items) { Console.WriteLine($"{item.Id} {item.Reason} {item.Status}"); } } else if (command == "add") { var parser = new AddressParser(); var wb = new XSSFWorkbook(tablePath); var sheet = wb.GetSheetAt(0); var addDepositionPointRequest = new AddDepositionPointsRequest() { AgentId = long.Parse(agentId), RequestId = Guid.NewGuid().ToString(), Points = new DepositionPoint[134] }; for (int i = 0; i != 134; i++) { var row = sheet.GetRow(i + 1); if (row != null) { var depositionPoint = new DepositionPoint() { Id = (int)row.GetCell(1).NumericCellValue, Type = "atm", Address = parser.Parse(row.GetCell(6).StringCellValue), Subagent = false }; addDepositionPointRequest.Points[i] = depositionPoint; } } File.WriteAllText(@"C:\Users\it014\Desktop\request.txt", UTF8Encoding.UTF8.GetString(xmlSerializer.Serialize <AddDepositionPointsRequest>(addDepositionPointRequest))); Console.ReadLine(); var result = client.AddDepositionPointsRequest(addDepositionPointRequest); File.AppendAllText("log.txt", result.RequestId + "\r\n"); Console.WriteLine(result.RequestId); Console.WriteLine(result.Status); if (result.Error != null) { Console.WriteLine(result.Error.Code); Console.WriteLine(result.Error.PointId); } } else if (command == "balance") { var balnceRequest = new BalanceRequest() { AgentId = long.Parse(agentId), ClientOrderId = Guid.NewGuid().ToString(), RequestDT = DateTime.Now }; var result = client.BalanceRequest(balnceRequest); Console.WriteLine(result.Balance); Console.WriteLine(result.ClientOrderId); Console.WriteLine(result.ProcessedDt); Console.WriteLine(result.Status); Console.WriteLine(result.Error); } Console.ReadLine(); } } catch (Exception e) { Console.WriteLine(e.GetType().FullName); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); Console.WriteLine(e.HResult); Console.ReadLine(); } }
public static DocumentModel Load(MainWindowViewModel mainWindowViewModel, string filePath) { Logger.GetInstance().Debug("Load() >>"); try { if (!string.IsNullOrEmpty(filePath)) { string currentMarkdown = ""; string currentHtml = ""; string currentXml = ""; using (var fs = new FileStream(filePath, FileMode.Open)) { using (var archive = new ZipArchive(fs)) { foreach (var entry in archive.Entries) { if (entry.Name.EndsWith(".md")) { using (var stream = entry.Open()) { using (var zipSr = new StreamReader(stream)) { currentMarkdown = zipSr.ReadToEnd(); } } } if (entry.Name.EndsWith(".html")) { using (var stream = entry.Open()) { using (var zipSr = new StreamReader(stream)) { currentHtml = zipSr.ReadToEnd().RemoveScripts(); } } } if (entry.Name.EndsWith(".xml")) { using (var stream = entry.Open()) { using (var zipSr = new StreamReader(stream)) { currentXml = zipSr.ReadToEnd(); } } } } } } // Get metadata var gxs = new GenericXmlSerializer <DocumentMetadata>(); var documentMetadata = gxs.DeSerializeFromString(currentXml); // Get markdown text var documentMarkdown = currentMarkdown; // Get source URI var tempFolderPath = AppDomain.CurrentDomain.BaseDirectory + "Temp"; if (!Directory.Exists(tempFolderPath)) { Directory.CreateDirectory(tempFolderPath); } var tempSourceFilePath = tempFolderPath + "\\tempsource.html"; using (var sw = new StreamWriter(tempSourceFilePath)) { sw.Write(currentHtml); } var documentHtml = new Uri(tempSourceFilePath); // Generate the model var documentModel = new DocumentModel(mainWindowViewModel, documentMetadata.FileName) { Metadata = documentMetadata, Html = documentHtml, Markdown = documentMarkdown }; Logger.GetInstance().Debug("<< Load()"); return(documentModel); } Logger.GetInstance().Debug("<< Load()"); return(null); } catch (Exception e) { throw e; } }
public PreferencesViewModel() { Logger.GetInstance().Debug("PreferencesViewModel() >>"); try { ViewID = Guid.NewGuid(); if (DesignerProperties.GetIsInDesignMode(new DependencyObject())) { return; } LoadCommands(); if (File.Exists(FilePaths.PreferencesFilePath)) { var gxs = new GenericXmlSerializer <PreferencesModel>(); CurrentPreferences = gxs.DeSerialize(FilePaths.PreferencesFilePath); } else { throw new Exception(FilePaths.PreferencesFilePath + " file does not exist!"); } LogLevels = new ObservableCollection <string> { "DEBUG", "INFO", "ERROR" }; var fonts = new ObservableCollection <string>(); foreach (var fontFamily in FontFamily.Families) { fonts.Add(fontFamily.Name); } Fonts = fonts; FontSizes = new ObservableCollection <string> { "8", "9", "10", "11", "12", "14", "18", "24", "30", "36", "48", "60", "72" }; Languages = new ObservableCollection <string> { "English" }; Colors = new ObservableCollection <string> { "Amber", "Blue", "BlueGrey", "Brown", "Cyan", "DeepOrange", "DeepPurple", "Green", "Grey", "Indigo", "LightBlue", "LightGreen", "Lime", "Orange", "Pink", "Purple", "Red", "Teal", "Yellow" }; } catch (Exception e) { Logger.GetInstance().Error(e.ToString()); MessageBox.Show(e.Message, "An error occured while initializing the window", MessageBoxButton.OK, MessageBoxImage.Error); } Logger.GetInstance().Debug("<< PreferencesViewModel()"); }