コード例 #1
0
ファイル: JsonParser.cs プロジェクト: xKUPERx/CloudTask
 public bool LoadCaseFromFile(out Case currentCase)
 {
     try
     {
         using (StreamReader inPutFileStream = new StreamReader(m_fileToParse))
         {
            string result = inPutFileStream.ReadToEnd();
            currentCase = (Case)JsonConvert.DeserializeObject(result, typeof(Case), new JsonSerializerSettings
             {
                 TypeNameHandling = TypeNameHandling.Auto,
                 PreserveReferencesHandling = PreserveReferencesHandling.Objects
             });
         }
         if (currentCase != null && currentCase.Nodes != null)
         {
             RestoreParentLink(currentCase);
         }
         return true;
     }
     catch (Exception ex)
     {
         currentCase = null;
         Logger.WriteInfoMessage(String.Format("\nLoad case from file error:\n\tFile name - {0};\n\tException - {1}", m_fileToParse, ex.ToString()));
         return false;
     }
 }
コード例 #2
0
ファイル: JsonParser.cs プロジェクト: xKUPERx/CloudTask
 public bool SaveCaseToFile(Case currentCase)
 {
     try
     {
         using (StreamWriter outPutFileStream = new StreamWriter(m_fileToParse))
         {
             string jsonTypeNameAuto = JsonConvert.SerializeObject(currentCase, Formatting.Indented, new JsonSerializerSettings
             {
                 TypeNameHandling = TypeNameHandling.Auto,
                 PreserveReferencesHandling = PreserveReferencesHandling.Objects
             });
             outPutFileStream.WriteLine(jsonTypeNameAuto);
         }
         return true;
     }
     catch(Exception ex)
     {
         Logger.WriteInfoMessage(String.Format("\nSave case to file error:\n\tFile name - {0};\n\tException - {1}", m_fileToParse, ex.ToString()));
         return false;
     }
 }
コード例 #3
0
ファイル: MainForm.cs プロジェクト: xKUPERx/CloudTask
 private void TestJsonParser()
 {
     JsonParser jsonparser = new JsonParser();
     jsonparser.SaveCaseToFile(m_currentCase);
     m_currentCase = null;
     jsonparser.LoadCaseFromFile(out m_currentCase);
 }