private static IList <TextWriter> GetTextWriterList() { if (Mode == LoggingMode.Console) { return(Console.Out.AsList()); } string dir = Path.GetDirectoryName(FilePath); Directory.CreateDirectory(dir); FileStream stream = new FileStream(FilePath, FileMode.Append, FileAccess.Write); TextWriter writer = new StreamWriter(stream); return(Mode == LoggingMode.Both ? new List <TextWriter> { writer, Console.Out } : writer.AsList()); }