繁体   English   中英

IApplicationBuilder不包含UseStaticFiles()

[英]IApplicationBuilder does not contain UseStaticFiles()

我尝试了不同版本的StaticFiles.But它显示错误,因为IApplicationBuilder不包含UseStaticFiles()。

"Microsoft.AspNetCore.StaticFiles": "1.1.1"

我正在使用Microsoft提供的.net文档中提供的确切代码。 这是我在Startup.cs中的内容。 注意:app是IApplicationBuilder

app.UseStaticFiles(new StaticFileOptions()
            {
                FileProvider = new PhysicalFileProvider(
                    PathString.Combine(Directory.GetCurrentDiriectory(), @"Files")),
                RequestPath = new PathString("/Files")
            });

要把它放在上下文中,我想读取“Files”文件夹中的目录和文件。 这是我用来读取文件夹内容的代码行,但它总是返回null。 注意:“initialFilePath”是文件夹“File”的相对路径。

var contents = _fileProvider.GetDirectoryContents(initalFilePath);

谢谢

添加nuget包“Microsoft.AspNetCore.StaticFiles”

在记事本中打开您的csproj文件,并确保您有以下行。

<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.2" />

如果没有,请添加它并重新加载项目并重建。

你几乎肯定错过了一个using声明。 扩展方法UseStaticFiles位于Microsoft.AspNetCore.Builder命名空间中。 只需将其添加到Startup.cs的顶部:

using Microsoft.AspNetCore.Builder;

最后,我解决了这个问题。 我尝试了多种不同的东西,比如从存储库中获取新副本,删除.dll并重新编译,甚至尝试在不同版本的nuget包之间切换也没有用。

最后,我创建了一个全新的解决方案并将我的文件复制到新的解决方案中,现在新解决方案中的错误消失了。 这是一个非常繁琐的解决方案,但最终还是有效的。 希望如果有人遇到同样的问题会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM