2011-07-23 14 views
8

Acabo de agregar Mini Profiler a mi proyecto MVC3 con nuget y he seguido los pasos básicos para configurarlo. A partir del perfil en Application_BeginRequest() y parar en Application_EndRequest()Excepción de MVC Mini Profiler en MiniProfiler.Stop()

protected void Application_BeginRequest() 
    { 
     if (Request.IsLocal) 
     { 
      MiniProfiler.Start(); 
     } 

    } 

    protected void Application_EndRequest() 
    { 
     MiniProfiler.Stop(); 
    } 

MiniProfiler.Stop() está lanzando una excepción - "Servidor no puede anexar Remate de cabeza de cabeceras HTTP se han enviado."

¿Alguien más ha visto esto?

Respuesta

1

Esto parece estar relacionado con Combres (http://combres.codeplex.com/). Si ignoro las solicitudes de mi js y css que se combinaron y comprimieron con combres, el generador de perfiles parece funcionar mejor (sin excepciones)

+0

¿Puedo decir que Combres (aunque es una herramienta bien construida) probablemente no sea algo que quiera usar? Si está buscando combinar y minimizar sus css/js, debe hacerlo en tiempo de compilación para disminuir la carga del servidor. [Aquí hay otra publicación que escribí sobre el tema.] (Http://stackoverflow.com/questions/6687475/is-there-a-plugin-which-automatically-minify-and-cache-javascript/6687530#6687530) –

+0

Nota: el punto principal en ese tema es que debe usar [Chirpy] (http://chirpy.codeplex.com/) para combinar y minificar su JS/CSS. Es una herramienta FANTÁSTICA ... y no, yo no No tengo ninguna afiliación con ellos. –

+0

Gracias por la sugerencia. Veré a Chirpy. Combres fue lo mejor que pude encontrar en el momento en que estaba buscando, aunque parece bastante "pesado" en el tiempo de ejecución. – BZink

7

Pregunta anterior, pero respondiendo de todos modos.

Problema causado por algún componente (SignalR en mi caso) llamadas HttpResponse.Flush. Resuelto al excluir SignalR del perfilado. A continuación se muestra una versión simple de lo que hemos hecho.

if (Request.IsLocal && !Request.Path.StartsWith("/signalr")) 
{ 
    MiniProfiler.Start(); 
} 

Espero que ayude.

Cuestiones relacionadas