在浏览器中执行时,我正在学习asp.net核心,我得到响应标头为茶k而不是iisexpress。我在Startup.cs configure方法中编写了以下代码来获取进程名称,但我仍在获取dotnet,无法获取iisexpress。
app.Run(async (context) => {
await context.Response.WriteAsync("Hello World!\n");
await context.Response.WriteAsync(System.Diagnostics.Process.GetCurrentProcess().ProcessName);//dotnet
});
在Program.cs中,我添加.UseIIS()
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseIIS()
.UseStartup<Startup>();
以下是来自.csproj文件
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
<RootNamespace>CookieStore</RootNamespace>
</PropertyGroup>
请帮助我在InProcess和OutOfProcess中运行项目。
答案 0 :(得分:0)
如果使用“ dotnet run”从CLI运行应用程序,则默认情况下它将在kestrel中运行,如果使用Visual Studio,请尝试从启动下拉列表中使用IIS Express运行该应用程序。
答案 1 :(得分:0)
最后,在更新了Visual Studio 2017之后,问题终于得到解决。在更新到VS2017 15.9之后,我更早使用了VS2017 15.3,该问题已得到解决。