示例#1
0
 /// <summary>
 /// Запись данных БД в файл
 /// </summary>
 /// <param name="lawyers"></param>
 /// <param name="path"></param>
 public void WriteDBToFile(IEnumerable <Lawyer> lawyers, string path, FileSavingOptions options)
 {
     using (FileStream fileStream = new FileStream(path ?? path_, options == FileSavingOptions.Rewrite ? FileMode.Create : FileMode.Append))
     {
         using (StreamWriter streamWriter = new StreamWriter(fileStream))
         {
             streamWriter.WriteLine(header_);
             foreach (var lawyer in lawyers)
             {
                 string line = "";
                 int    k    = 0;
                 foreach (PropertyInfo property in typeof(Lawyer).GetProperties(BindingFlags.Public | BindingFlags.Instance).Where(x => x.PropertyType == typeof(string)))
                 {
                     string property_value = (string)property.GetValue(lawyer, null);
                     if (property_value.Contains(',') || property_value.Contains('"'))
                     {
                         line += String.Format("\"{0}\"", property_value);
                     }
                     else
                     {
                         line += property_value;
                     }
                     if (++k < COLUMNS_LEN)
                     {
                         line += ",";
                     }
                 }
                 streamWriter.WriteLine(line);
             }
         }
     }
 }
 public FileSavingOption(FileSavingOptions option)
 {
     Option = option;
 }