2016-12-20 8 views
0

私のビューにダウンロードボタンを実装する必要があります。ユーザーがクリックすると、データベースからいくつかのレコードを読み込み、ファイルを作成してダウンロードする必要があります。テキストファイルを作成してダウンロードする

var stream = new MemoryStream(); 
stream.Position = 0; 

var response = new HttpResponseMessage(HttpStatusCode.OK); 
response.Content = new StreamContent(stream); 
return response; 

これは私が今のところ持っているコードですが、私はそれにいくつかのデータを書き込み、どのようにtxtファイルに変換する方法を知りません。

これを作成してサーバーに保存する必要がありますか?ここを読むだけですか?

答えて

0

apiから戻る前にtxtファイルを作成する必要があります。 here txtファイルの作成方法を参照できます。

これはストリームを返すメソッドです。

var path = @"C:\YourFile.txt"; 
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK); 
var stream = new FileStream(path, FileMode.Open); 
result.Content = new StreamContent(stream); 
result.Content.Headers.ContentType = 
    new MediaTypeHeaderValue("application/octet-stream"); 
result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment"); 
result.Content.Headers.ContentDisposition.FileName = Path.GetFileName(path); 
result.Content.Headers.ContentLength = stream.Length; 
return result; 
関連する問題