You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core中Kestrel根文件夹及IIS Express根文件夹查询方法

.NET Core服务器根文件夹相关问题解答

我来帮你逐一解答这两个问题:

1. .NET Core中Kestrel的根文件夹是什么?

Kestrel的默认根文件夹是项目的编译输出目录,也就是你构建项目后生成二进制文件、配置文件的地方。举个例子,如果是Debug模式编译,路径通常是:
项目根目录/bin/Debug/netX.X/
这里的netX.X对应你使用的.NET Core版本,比如net6.0、net7.0。这个根目录是Kestrel查找静态文件、appsettings.json等资源的基础路径。

当然你也可以自定义这个路径,在Program.cs里通过UseContentRoot方法指定:

var builder = WebApplication.CreateBuilder(args);
// 自定义根文件夹路径
builder.WebHost.UseContentRoot(@"D:\MyCustomContentRoot");

2. VS 2017创建Angular SPA .NET Core应用并通过IIS Express托管时,根文件夹是什么?如何查找?

用VS2017创建的Angular SPA .NET Core应用,通过IIS Express托管时,默认根文件夹同样是项目的编译输出目录(和Kestrel默认路径一致),也就是项目根目录/bin/Debug/netX.X/。

想要找到这个具体路径,有几个简单的方法:

  • 通过VS输出窗口查看
    启动调试后,打开VS的「输出」窗口(顶部菜单「视图」→「输出」),在输出内容里找到类似Content root path: D:\YourProject\bin\Debug\netcoreapp2.1的行,这就是当前IIS Express托管的根文件夹路径。
  • 通过代码打印查看
    在Program.cs里添加一行代码,启动时输出根路径:
    var app = builder.Build();
    // 打印内容根路径到调试控制台
    Console.WriteLine($"当前根文件夹路径:{app.Environment.ContentRootPath}");
    // 其他中间件配置代码...
    app.Run();
    
    启动调试后,在VS的「调试控制台」就能看到打印的路径。
  • 查看IIS Express配置文件
    VS会在项目的.vs/config目录下生成applicationhost.config文件,打开后找到对应项目的<site>节点,里面的physicalPath属性会标注IIS Express关联的路径,但要注意这个路径可能指向项目根目录,运行时实际使用的还是编译输出目录,所以优先推荐前两种方法。

内容的提问来源于stack exchange,提问作者Unknown developer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:03:37