![](/img/trans.png)
[英]'IServiceCollection' does not contain a definition for 'AddMvc', 'IApplicationBuilder' does not contain a definition for '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.