Pregunta

Así que el problema es la mitad de la aplicación está escrito en ASP clásico y la otra mitad está en asp.net. Hay un archivo PDF (en memoria) que se genera por el código ASP clásico que tengo que compartir con el medio .NET. Pensé en salvar el PDF a la FS o DB, que estoy bastante seguro de que la mayoría de ustedes no recomendaría ya que tendría que pasar por un proceso muy lento de salvar a IO, y luego yo tendría que limpiar manualmente después de - crear innecesariamente más cuellos de botella y puntos de fallo.

pensé que imitan un post de la página ASP clásico a .NET mediante el uso de objetos o Server.Transfer Microsoft.XMLHTTP, pero tampoco se ajusta exactamente el escenario ya que realmente quiere la URL en el lado del cliente para estar apuntando en la aspx .NET. Entonces, ¿hay una forma sencilla de fabricar un POST desde el clásico ASP .NET a una página con un archivo PDF incrustado?

Gracias de antemano por cualquier comentario o sugerencia.

¿Fue útil?

Solución

Un poco de un truco, pero ...

Crear un formulario en ASP clásico con un campo que se rellenan con los datos del archivo PDF. La acción de la forma sería la página ASP.NET. Algo así como:

<body onload="pdfsenderform.submit()">
    <form name="pdfsenderform" action="pdf.aspx" method="post">
       <input type="hidden" name="pdffiledata" value="<%...output your PDF data here...%>" />
   </form>
</body>

Puede que sea necesario para codificar los datos binarios en formato PDF antes de escribirla en el campo de formulario (base 64 o algo así).

Otros consejos

Su mejor apuesta es probablemente el FS o DB teniendo en cuenta la dificultad y la interacción ASP.NET ASP. Ese es mi "camino de menor resistencia".

Sólo tiene que escribir en el disco, almacenar el nombre de archivo en una galleta o cadena de consulta, y Response.Redirect el usuario. Es probable que sea "lo suficientemente rápido" y mucho más fácil que escribir un mínimo del servidor de estado común denominador accesible a través de TCP a dos de ellos - que es la única manera en la memoria de lo que puedo imaginar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top