我已经添加 Cassette.Nancy 到现有的 Nancy Web 项目。当我设置时这工作正常 CassetteNancyStartup.OptimizeOutput = true; 但当这设置为 false 我在非捆绑资源上收到 404 错误。

这是我的设置。

我正在使用以下软件包:

  • 卡带.Nancy 版本=“2.1.1”
  • 盒式磁带版本=“2.4.1”
  • 南希版本=“0.22.2”
  • 南希.欧文版本=“0.22.2”
  • Nancy.Viewengines.Razor 版本=“0.22.2”

这些文件是这样的:

  • 内容
    • 文件1.css
    • 文件2.css
  • 脚本
    • 脚本1.js
    • script2.js

CassetteBundle配置:

public class CassetteBundleConfiguration : IConfiguration<BundleCollection>
{
    public void Configure(BundleCollection bundles)
    {
        bundles.AddPerSubDirectory<StylesheetBundle>("Content");
        bundles.Add<ScriptBundle>("Scripts");
    }
}

在我的 _Layout.cshtml:

@{
    Bundles.Reference("Content");
    Bundles.Reference("Scripts");
}

@Bundles.RenderStylesheets()
@Bundles.RenderScripts()

最后在 Bootstrapper:

public Bootstrapper()
{
    CassetteNancyStartup.OptimizeOutput = false;
}

就像我说的,当 CassetteNancyStartup.OptimizeOutput 被设定为 true 但当 false 每个资源都会返回 404,如下所示:

GET http://localhost:10005/_cassette/asset/Content/file1.css?cf7a7edf515a8184a0c53ec498c583cc64bb0e63 404 (Not Found) 

有什么建议么?

有帮助吗?

解决方案

这个问题是由于我没有在 web.config. 。添加这个修复了它。

  <system.webServer>
    <handlers>
      <add name="Owin" verb="*" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb" />
    </handlers>
  </system.webServer>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top