链接到 MVC5 中上传的文件
本文关键字:文件 MVC5 链接 | 更新日期: 2023-09-27 18:37:01
我从两周前就遇到了这个问题,请提供任何帮助。
我使用HttpPostedFileBase字段创建了一个模型,以将文件保存在文件夹中,它在创建视图中非常适合我。
现在我想在详细信息视图中创建一个指向上传文件的链接。
我尝试了几种方法,但找不到解决方案。
请提供任何帮助。
在模型中,我为文件定义了一些参数和以下内容
[NotMapped]
[Display(Name = "C.V")]
[DataType(DataType.Upload)]
public HttpPostedFileBase CV { get; set; }
在控制器中,我做了以下操作
if (ModelState.IsValid)
{
if (file != null && file.ContentLength > 0)
{
// extract only the fielname
var fileName = Path.GetFileName(file.FileName);
// store the file inside ~/Content/LearnObject-Repository folder
var path = Path.Combine(Server.MapPath("~/Content/CVs"), fileName);
file.SaveAs(path);
var fileNameToSaveInDB = @"~/Content/CVs/" + fileName;
}
db.Employees.Add(employee);
db.SaveChanges();
谢谢
有关您实际尝试过的内容的更多信息会有所帮助,但这里有几个简单的步骤:
在模型中添加新属性
[NotMapped]
public string FileUrl { get; set; }
在控制器中设置值
public ActionResult Details(int id = 0)
{
MyModel myModel = db.MyModel.Find(id);
myModel.FileUrl = ""; // <-- resolve link;
...
}
,然后在视图中添加链接
<div class="display-field">
<a href="@Html.DisplayFor(model => model.FileUrl)">Link to file</a>
</div>