我试图读取一个ASP.Net集成测试的核心web应用程序代码(C#)。我有以下代码:
Process process = null
try
{
var startInfo = new ProcessStartInfo("dotnet", "myWebApp.dll")
{
UseShellExecute = false,
RedirectStandardError = true,
RedirectStandardOutput = true,
CreateNoWindow = true,
};
process = Process.Start(startInfo);
//Do stuff with process.StandardError and process.StandardOutput
}
finally
{
process?.Kill();
process?.Dispose();
}
这是因为我得到了标准错误和标准输出流,并且能够读取它们。当我尝试与正在运行的进程(我的web应用程序)交互时,问题就出现了。
标准输出表示应用程序已正确启动,并包括以下行:
https://localhost:XXXX
但是如果我向
https://localhost:XXXX
我没有得到回应,任务最终被取消了。有没有更好的方法启动一个web应用程序的代码,让我访问标准的输出和标准的错误流,同时也让我发送web请求?