Pregunta

he añadido Cassette.Nancy a un proyecto web existente de Nancy.Esto funciona bien cuando configuro CassetteNancyStartup.OptimizeOutput = true; pero cuando esto se establece en false Obtengo 404 sobre los recursos desagregados.

Aquí está mi configuración.

Estoy usando los siguientes paquetes:

  • Cassette.Nancy versión="2.1.1"
  • Versión del casete="2.4.1"
  • Versión de Nancy="0.22.2"
  • Nancy.Owin versión="0.22.2"
  • Nancy.Viewengines.Razor versión="0.22.2"

Los archivos son así:

  • Contenido
    • archivo1.css
    • archivo2.css
  • Guiones
    • script1.js
    • script2.js

Configuración del paquete de casetes:

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

en mi _Layout.cshtml:

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

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

Y finalmente en Bootstrapper:

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

Como digo, esto funciona bien cuando CassetteNancyStartup.OptimizeOutput se establece en true pero cuando false cada uno de los recursos devuelve un 404 como este:

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

¿Alguna sugerencia?

¿Fue útil?

Solución

Este problema se debió a que no agregué el controlador Owin en el web.config.Agregar esto lo solucionó.

  <system.webServer>
    <handlers>
      <add name="Owin" verb="*" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb" />
    </handlers>
  </system.webServer>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top