2012-01-16 26 views
0

私はC#を使用してxmlファイルを作成しました。このファイルは、マシンの任意の場所に保存できます(この状況では、 )、しかし、私は、ユーザーがブラウザ購入からそれをダウンロードさせて、 - > "ここをクリックしてファイルをダウンロードする"のようなリンクを与えるようにしたいと思います。asp.netを使用してxmlファイルをダウンロード

ChromeとFireFoxでは、xmlファイルの本文部分に一部の値しかない新しいタブが表示されますが、IEではxml全体が表示されます。誰かが上記のリンクをクリックすると、ダウンロードフォルダにダウンロードします。

ご協力いただきありがとうございます。

+0

私は自分の答えを編集しました。希望が役立ちます。 – IsmailS

答えて

1

ファイルの種類と名前を具体的に記述する必要があります。 TransmitFileメソッドを使用します。これにより、Save Asウィンドウが表示されます。

私はthis webpage

Response.ContentType = "image/jpeg"; 
Response.AppendHeader("Content-Disposition","attachment; filename=SailBig.jpg"); 
Response.TransmitFile(Server.MapPath("~/images/sailbig.jpg")); 
HttpContext.Current.ApplicationInstance.CompleteRequest(); 
+0

あなたの返信のおかげで、次のコードを試したときにエラーが発生します base {System.Exception} = {コードが最適化されているかネイティブフレームが呼び出しスタックの上にあるため式を評価できません} – tanweer

+0

'Response.End()'メソッドの代わりに 'HttpContext.Current.ApplicationInstance.CompleteRequest()'を使ってみてください。私は質問を更新しました。私に電話する必要はありません! :) –

+0

時間ありがとう。実際に私はWebMethodを使用しており、静的なので動作しません。 – tanweer

1
Response.AddHeader("content-disposition", "attachment;filename=temp.xml"); 
Response.ContentType = "text/xml"; 
Response.Write(File.ReadAllText(Server.MapPath("~/temp.xml"))); //you may want to write the XML directly to output stream instead of creating an XML file first. 
Response.End(); 

から次のコードを得たが、これがお役に立てば幸いです。

関連する問題