Aparece un error (el servidor no puede establecer el tipo de contenido después de que se hayan enviado encabezados HTTP) en el siguiente código (línea ContentType
). ¿Qué debería cambiar?Servidor no puede establecer el tipo de contenido después de que se enviaron encabezados HTTP
System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
response.ClearContent();
response.ContentType = "text/plain";
response.AddHeader("Content-Disposition", "attachment; filename=" + System.IO.Path.GetFileName(PervasiveConstants.DownloadZipLocation) + ";");
response.TransmitFile(PervasiveConstants.DownloadZipLocation);
response.Flush();
response.End();
Esto se encuentra dentro de un elemento web Sharepoint 2010.
este es el "problema" general para todos los servidores. Una vez que el programa comienza a generar contenido, los encabezados deben enviarse al cliente y no pueden modificarse. Para establecer encabezados en cualquier lugar de Programm, debe habilitar el almacenamiento en búfer de salida o algo así. Se llama "buffer de salida" en Apache/php, pero debería haber algo similar en otros servidores. – kirilloid
¿Por qué comienzas con 'ClearContent'? Si la respuesta ya * tiene * contenido, entonces su código probablemente se está ejecutando demasiado tarde en el proceso. –