Internet Explorerで他の種類のファイルをダウンロードして保存でき、FirefoxでPDF形式をダウンロードして保存できます。しかし、IE8では、私はPDFファイルをダウンロードすることはできません。私はwcfコードをチェックしました。ファイルストリームを返しています。すでに述べたように、.xlsxのような他の種類のファイルでも動作します。ここではIEでPDFを保存できません
私のフォームはここ
<div>
<form id="frmdownloadData" action="http://localhost:9433/NASWcf1/runDownloadFile"
method="post" enctype="multipart/form-data" target="_blank">
<input type="hidden" id="UserId" name="UserId" value="****" />
File Name: <input id="filename" name="filename" type="text" value=""/>
<br />
App Code: <input id="appcode" name="appcode" type="text" value="Appcode_FileId" />
</form>
</div>
<input type="button" id="submitdwnldfrm" onclick="dofileDownload()" />
はdofileDownload(のためのスクリプトですhtmlページ上にある)
function dofileDownload() {
$('#frmdownloadData').ajaxSubmit(function() {
alert("Thank you for your comment!");
});
}
Befopre WCFからのファイルストリームを返す、私は、このプロパティを設定します。 System.ServiceModel.Web.WebOperationContext.Current.OutgoingResponse.ContentType = "アプリケーション/オクテットストリーム";
私も "application/pdf"に設定しようとしましたが、それは役に立ちません。
助けていただければ幸いです。
どのようにあなたは 'それは動作しません' 意味ですか? Internet Explorerはファイルを保存する代わりにブラウザでpdfを読み込もうとしますか?あなたは他のマシンから試すことができますか? – Jay
私が思い出したように、IEはAdobeプラグインで気まぐれになることがあります。 POSTをGETに変更してみるか、空のブラウザウィンドウを開いてから、window.locationを開いた後にPDF urlに設定しなければならないことがあります。 – sdcoder
ロードしたり保存したりしません。私はWindows 7の64ビット仮想マシンで作業しています。そのIE8と私はその64ビットも考えています。投稿したコードはFirefoxで動作しますが、ChromeとWindowsでは失敗します。だから、もっと良い方法があります。私が使用しなければならない唯一のツール(設計要件)は、ajaxとWCFです。 また、.pdfファイルのURLはありません。これは、ユーザーがフォルダを閲覧し、ファイルを選択してからそのファイルをダウンロードできるイントラネットWebアプリケーションの一部です。 – edepperson