我想执行以下文件类型的下载操作。
1. .txt,.pdf,.xlsx,.jpg,.png,.xls
我的应用程序是Angularjs和WebApi
fron-end- angularjs
back-end - webapi
我通过指定文件路径的href属性创建了锚标记,如下所示
<a href="http://x.com/sample.txt" target="_self" download="xx">sample</a>
以上将下载该文件,它工作正常。我们也可以在webapi下载该文件。
在代码段下方执行webapi中的下载文件选项
public HttpResponseMessage DownLoadFile(string FileName, string fileType)
{
Byte[] bytes = null;
if (FileName != null)
{
string filePath = Path.GetFullPath(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.InternetCache), FileName));
FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
bytes = br.ReadBytes((Int32)fs.Length);
br.Close();
fs.Close();
}
HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
System.IO.MemoryStream stream = new MemoryStream(bytes);
result.Content = new StreamContent(stream);
result.Content.Headers.ContentType = new MediaTypeHeaderValue(fileType);
result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = FileName
};
return (result);
}
上面的代码段来自下面的链接
在webapplication中下载文件的最佳或首选方式是什么?