asp.net-mvc - 本地文件 ASP.NET/MVC 的映射路径

标签 asp.net-mvc

我有一个用 ASP.NET MVC 编写的文件上传程序。它目前在我的本地开发机器上,我想知道如何(如果可能)为每个上传的文件生成一个链接,以便在单击它时显示/下载该项目等。

处理显示文件列表的当前代码/标记:

<table>
    <tr>
        <th></th>
        <th>
            Name
        </th>
        <th>
            Length
        </th>
        <th></th>
    </tr>
    <%
    var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "uploads");
    foreach (var file in Directory.GetFiles(path))
    {
        var item = new FileInfo(file);
    %>
    <tr>
        <td></td>
        <td>
            <%=Html.Encode(Path.GetFileName(item.Name))%>
        </td>
        <td>
            <%=Html.Encode(item.Length >= 1024 ? item.Length / 1024 + " kilobytes" : item.Length + " bytes")%>
        </td>
        <td>
            // This is the line in question. Does not work as-is.
            <a href="<%= item.FullName %>"><%= Html.Encode(Path.GetFileName(item.Name)) %></a>
        </td>
    </tr>
    <% } %>
</table>

我想一旦它上线,我将不得不更改文件处理代码,但现在这已经足够了。也欢迎提出建议:)

谢谢!

最佳答案

使用 Url.Content,例如:

<img src="<%= Url.Content("~/Content/UserImages/FileName.jpg") %>" />

波浪号的意思是“我网站的根,无论它在哪里。”您不必将文件放在 Content 中;您可以将它们放在站点根目录下的任何位置。

关于asp.net-mvc - 本地文件 ASP.NET/MVC 的映射路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1435363/

相关文章:

asp.net-mvc - 任何支持具有不同切片半径的饼图的 ASP.NET MVC 友好图表控件?

c# - 如何下载 log4Net 生成的日志文件

asp.net-mvc - asp.net mvc 3 中的 AuthorizeAttribute 属性中使用 RedirectResult 的问题

c# - 如何在 Web Api 中向一个客户端显示/隐藏少数方法以及向另一客户端显示/隐藏其他方法

javascript - $scope 对象在 ng-view angularjs + asp.net mvc 中未定义

c# - Entity Framework : An error occurred while updating the entries

javascript - 在 <select> 中的 <span> 中获取 id

asp.net - 如何对 UrlHelper 自定义帮助器方法进行单元测试

c# - 如何对使用 ServiceStack 的 JsonServiceClient() 的 ASP.NET MVC 操作进行单元测试?

c# - AspNet Identity Authentication 哈希机特定