文件没有从mvc中的href链接下载

时间:2017-03-02 09:13:33

标签: asp.net-mvc href

在视图中我有如下的href链接

Columns_to_Merge = ['ColumnA','ColumnB','ColumnC']

# CSV1

ColumnA,ColumnB,ColumnF,ColumnC
2,3,4,9
8,2,5,7
1,2,3,4

# CSV2

ColumnD,ColumnA,ColumnC,ColumnB,ColumnH
2,3,4,9,12
8,2,5,7,2
1,2,3,4,5

# CSV3

ColumnH,ColumnJ,ColumnA,ColumnB,ColumnC
2,3,4,99,12
8,5,5,7,2
1,55,3,70,5

,它提供如下视图

enter image description here

但是点击"文件"该文件没有开放。

我检查了元素及其在html下面的生成

<a href="@Url.Content(Model.document_path)" >file</a>

路径是正确的。但如果我们点击&#34; file&#34;文件没有打开

任何我失踪的东西?

2 个答案:

答案 0 :(得分:0)

您可以在控制器中创建操作。我用这个用于PDF。您应该能够使用列表更改类型:

public ActionResult GetProviderPdf(string filename)
{
    string fn = "/pdf/providers/" + filename;
    return File(fn, "application/pdf", Server.UrlEncode(filename));
}

不同文件类型的媒体列表:

here

答案 1 :(得分:0)

我尝试了@ Animus_Miles-Militis答案,效果很好!要完整参考,这是我的代码:

//Inside ImportController
public ActionResult GetExcelFileSample()
{
    var path = "~/App_Data/";
    var filename = "FinancialSample.xlsx";
    var type = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
    return File(path + filename, type, filename);
}

在我看来,我有这个标记:

<a href="@Url.Action("GetExcelFileSample", "Import")" download>Download</a>