public IProfile Create(string profileName) { if (Exists(profileName)) { throw new Core.Services.ProfileNameConflictException(profileName); } string profilePath = ProfilePath(profileName); FileInfoBase profileFileInfo = _fileSystem.FileInfo.FromFileName(profilePath); StreamWriter writer = profileFileInfo.CreateText(); using (CsvHelper.CsvWriter csvWriter = new CsvHelper.CsvWriter(writer, leaveOpen: false)) { csvWriter.Configuration.QuoteAllFields = true; csvWriter.Configuration.RegisterClassMap(new CSV.MatchRecordConfiguration()); csvWriter.WriteHeader <MatchRecord>(); csvWriter.NextRecord(); } FileSystemProfile profile = new FileSystemProfile(_fileSystem, profileName, profilePath); AddToCache(profileName, profile); return(profile); }
/// <summary> /// Creates the file with no content. /// </summary> /// <param name="instance">The file to create.</param> public static void CreateFileWithNoContent(this FileInfoBase instance) { if (instance == null) { throw new ArgumentNullException(nameof(instance)); } using (instance.CreateText()) { // nothing to do here flusing is done in disposing } }