无法在ASP.NET Core中使用中间件

时间:2016-08-06 11:25:11

标签: c# asp.net-core

我正在尝试按照Scott Allen的Pluralsight course编写一个小的ASP.NET核心应用程序。 我在macOS上。

我的project.json个依赖关系看起来像这样:

        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.0.0"
        },
        "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
        "Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
        "Microsoft.AspNet.Diagnostics": "1.0.0-rc1-final",
        "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final"

我恢复了所有必要的包裹。

我的Startup.cs看起来像这样:

...
 public void Configure(IApplicationBuilder app)
 {
      app.UseFileServer(); // 'IApplicationBuilder' does not contain a definition for 'UseFileServer' and no extension method 'UseFileServer' accepting a first argument of type 'IApplicationBuilder' could be found (are you missing a using directive or an assembly reference?) [netcoreapp1.0]
      app.Run(context =>
      {
          return context.Response.WriteAsync("Hello from ASP.NET Core!");
       });
  }
...

我似乎已经拥有所有依赖项,但编译器抱怨没有看到任何中间件的扩展方法(例如UseFileServer

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您需要将"Microsoft.AspNetCore.StaticFiles" : "1.0.0"依赖项添加到project.json文件中,或者在单击错误上的Ctrl+.时遵循IDE的建议(但如果它在Visual Studio代码中有效则为dunno)。

此外,您可能必须包含Microsoft.AspNetCore.Builder命名空间,因为UseFileServer位于静态文件库中