我已经通过管理员端的应用程序在SQL表中保存了一些文件,但现在我必须将表中保存的文件收回到该网站的另一个应用程序中的文件夹。我需要将文件保存在名为MyFiles的文件夹中,并希望通过单击下载链接下载文件 控制器
public ActionResult Index()
{
var Downloads = db.Downloads.ToList();
return View(Downloads);
}
查看
@model List<ThaniyamBank.Models.Download>
<div class="row">
@foreach (var item in Model)
{
<div class="col-lg-8 col-md-8 col-sm-8 col-xs-12 form_cont">
<p class="all_sub_hed">@item.ItemName</p>
<p class="tet">@item.Description</p>
<a href="http://localhost:56572/MyFiles/@(item.Url)" class="hvr-icon-back">Download Form</a>
</div>
}
</div>
这是我需要保存表格中数据的文件夹
此处显示的文件是我直接添加的
如何直接从表中获取文件
这是我的表名为downloads
此处Url列是带扩展名的文件的名称,我需要将此Url获取到应用程序中的myFiles文件夹。如何从表中获取文件?有谁能帮我找到解决方案,如何工作?
答案 0 :(得分:1)
您应该通过映射到其服务器路径来定义文件路径。 在你的行动中,你可以这样做:
public ActionResult Index()
{
var Downloads = db.Downloads.ToList();
Downloads.ForEach(x=>{
x.Url = Server.MapPath(Url.Content("~/MyFiles/" + x.Url));
});
return View(Downloads);
}
在您的观点方面,您只需提供网址:
@model List<ThaniyamBank.Models.Download>
<div class="row">
@foreach (var item in Model)
{
<div class="col-lg-8 col-md-8 col-sm-8 col-xs-12 form_cont">
<p class="all_sub_hed">@item.ItemName</p>
<p class="tet">@item.Description</p>
<a href="@(item.Url)" class="hvr-icon-back">Download Form</a>
</div>
}
</div>
答案 1 :(得分:0)
首先,您需要更改URL
的{{1}}列。它应包含管理项目中PDF文件的完整目录路径,并为文件名添加另一列。
在您的操作方法中,只需从表中检索数据并将其传递给查看。
Table
在您的视图中,将文件URL绑定到另一个操作链接:
public ActionResult Index()
{
var Downloads = db.Downloads.ToList();
return View(Downloads);
}
在您的SaveFile操作方法中:
@model List<ThaniyamBank.Models.Download>
<div class="row">
@foreach (var item in Model)
{
<div class="col-lg-8 col-md-8 col-sm-8 col-xs-12 form_cont">
<p class="all_sub_hed">@item.ItemName</p>
<p class="tet">@item.Description</p>
<a href="@@Url.Action("SaveFile", "Download"), new { FilePath = @item.Url, FileName = @item.FileName })" class="hvr-icon-back">Download Form</a>
</div>
}
</div>
希望这有帮助。