因为我没有任何可以测试应用程序功能的IIS的Windows服务器,所以我想问下面的代码是否会按照我的意图工作 - Web应用程序会写入一些内容控制台,我需要将控制台中写入的内容保存到特定文件。我在我的笔记本电脑上使用Visual Studio 2013安装的ISS Express进行本地测试。将控制台输出从IIS保存到文件
IIS Express与Windows Server上的IIS相同,因此我可以使用下面的这段代码?
using (var consoleWriter = new StreamWriter(
new FileStream(_tempOutputFileName,
FileMode.Create, FileAccess.Write)))
{
Console.SetOut(consoleWriter);
//do some work here with output to console
}
var standardOutput =
new StreamWriter(Console.OpenStandardOutput()) { AutoFlush = true };
Console.SetOut(standardOutput);
编辑:我无法直接写入文件,因为我需要通过我正在使用的第三方库捕获写入控制台的内容。
为什么不直接写入文件? – ZippyV 2014-09-30 12:49:14
我无法使用,因为我正在使用外部库并将库写入控制台,而且我需要获取库向控制台写入的内容。 – 2014-09-30 12:53:13