Azure发布.NET Core应用后访问FolderX文件夹失败的问题排查
问题
在Azure上发布/部署.NET Core应用后,尝试访问已包含在发布包中的FolderX文件夹时,始终报错:Directory not found: \n/home/site/FolderX !
我的csproj文件配置如下:
<ItemGroup> <Content Include="FolderX\**" CopyToPublishDirectory="PreserveNewest"/> </ItemGroup>
由于发布包中FolderX与wwwroot处于同一层级,我尝试用以下代码访问:
string filePath = Assembly.GetExecutingAssembly().Location + @"\\"; //获取wwwroot路径并向上返回一级 string filePath2 = Path.GetDirectoryName(filePath); string DiretorioSchemas = Path.GetDirectoryName(filePath2) + "/FolderX";
但仍然报错FolderX not found!,请问问题出在哪里?
解决方案
注意:.NET 6.0已移除Microsoft.DotNet.PlatformAbstractions库,需要先安装对应的NuGet包。
使用以下代码获取正确的文件夹路径:
string basePath = Microsoft.DotNet.PlatformAbstractions.ApplicationEnvironment.ApplicationBasePath; string folderPath = Path.Combine(basePath, "FolderX");
内容的提问来源于stack exchange,提问作者Cristopher
相关产品推荐
相关产品推荐

