从webmatrix中的文件夹下载文件

时间:2014-03-10 12:15:35

标签: webmatrix razorengine

我有一个“票务系统”,当用户创建票证时,可以选择上传文件。这些文件将转到具有故障单名称的文件夹。

这是在创建故障单时创建文件夹的代码。

 var nomePasta = "Ticket Id - " + idNovoPedido;
                 string salva =   Path.Combine(Server.MapPath("~/"),"uploadedFiles",nomePasta);
                 Directory.CreateDirectory(salva);

然后在后台我可以看到该文件夹​​上是否有任何文件。

检查是否有任何文件的代码:

@foreach (string fullFilePath in Directory.GetFiles(Path.Combine(Server.MapPath("~/uploadedFiles"),"Ticket Id - "+@id)))
                    {
                        <div class="linkFicheiros">
                            <a href="@Href("~/uploadedFiles","Ticket Id - "+@id,Path.GetFileName(fullFilePath))">@Path.GetFileName(fullFilePath)</a>
                        </div>
                    }

现在我的问题是,我该如何下载文件?

如果我点击某个链接(例如,如果是照片,我的浏览器会打开一个新窗口并显示图像),如果是“docx”,则会显示“找不到该页面。”

更新

所以我找到了一些东西,如果文件是“.xls”,我可以毫无问题地下载它,但是如果文件是“.docx”,它会给出上面提到的错误“无法找到页面。”。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

互联网上还有其他一些警告,说明它取决于Web服务器上缺少对DocX文件的MIME类型的定义:Page cannot be found Error when executing a Hyperlink to a DocX File

无论如何,如果它有用,在这个article中我使用了一个通用例程进行文件下载:Downloading Files C#。您应该添加.docx案例及其MIME类型:

  

应用/ vnd.openxmlformats-officedocument.wordprocessingml.document