后端代码
- [HttpGet("DownloadExcel")]
- public async Task<dynamic> DownloadExcel(string tmplName)
- {
- var _fileName = "导入表模板.xlsx";
-
- var filePath = @"Files\DownLoad\";
- var NewFile = Path.Combine(filePath, tmplName);
- var stream = new FileStream(NewFile, FileMode.Open);
- return new FileStreamResult(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
- }
前端代码 vue 2.0
- // 下载导入表模板
- downloadExcel() {
- Axios.get('/api/Excel/DownloadExcel', {
- params: {
- tmplName: 'Excel'
- },
- responseType: 'blob',
- })
- .then(res => {
- const link = document.createElement('a')
- // const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' })
- const blob = new Blob([res.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
- link.style.display = 'none'
- link.href = URL.createObjectURL(blob)
- link.download = 'xxx入表模板.xlsx'
- document.body.appendChild(link)
- link.click()
- document.body.removeChild(link)
- })
- .catch(error => {
- console.log(error)
- })
- },
注意: 发布的WebAPI项目中有模板文件和文件夹