Cassette.Nancy非捆绑文件返回404

时间:2014-04-11 17:46:59

标签: nancy cassette

我已将Cassette.Nancy添加到现有的Nancy网络项目中。我设置CassetteNancyStartup.OptimizeOutput = true;时效果很好,但当设置为false时,我在非捆绑资源上得到404。

这是我的设置。

我正在使用以下软件包:

  • Cassette.Nancy version =“2.1.1”
  • Cassette version =“2.4.1”
  • 南希版=“0.22.2”
  • Nancy.Owin version =“0.22.2”
  • Nancy.Viewengines.Razor version =“0.22.2”

文件是这样的:

  • 内容
    • file1.css
    • file2.css
  • 脚本
    • script1.js
    • script2.js

CassetteBundleConfiguration:

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) 

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

这个问题归咎于我没有在web.config中添加Owin处理程序。添加此修复它。

  <system.webServer>
    <handlers>
      <add name="Owin" verb="*" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb" />
    </handlers>
  </system.webServer>