Ich kann sagen, dass ich die Antwort zu diesem kenne, aber ich fragen muss, warum Sie dies über webmethod tun müssen, als ein regelmäßiges Bedienerseitenereignis wahrscheinlich die gleiche UI Erfahrung ergeben.
Dieses ist, wie ich es tue:
in einem Knopfklickenereignis:
Response.Clear ();
Response.ClearHeaders ();
Response.ContentType = „Anwendung/pdf“;
//can ist auch anstelle „vom Zubehör“ „Inline“, sofort anzuzeigen
Response.AddHeader („Inhalt-Einteilung“, „Zubehör; filename=DefaultSaveName.pdf“);
//you konnte Bytes zu Response.OutputStream auch kopieren
Response.WriteFile (@ " C:\blah\pdf\mypdf.pdf ");
Response.End ()
Dieses ergibt keinen sichtbaren Blitz oder Aufflackern im Browser, also bin ich nicht sicher, welches ajax Sie hier kauft.
Wenn Sie in der Lage sind, es bitte zu tun die ajax, Weise bekanntzugeben wie. Ich bin neugierig, wie Sie um die Browserssicherheit erhalten.