为什么图像路径不存储在数据库MVC5中?
我是MVC的新手,所以我希望就我的问题获得帮助。我正在使用户上传图像。图像路径将存储在数据库中,但图像本身将存储在内容文件夹中。代码工作正常(这意味着没有错误),但是我没有得到想要的结果。感谢您的帮助。提前致谢。
这是控制器代码:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "EmployeeId,EmpName,EmpEmail,Poition,Nationality,Last_W_D,EmpHOD,Password,DepId,SignaturePath,DoctorCategory")] Tbl_Employee tbl_Employee, HttpPostedFileBase file)
{
if (ModelState.IsValid)
{
if(file != null)
{
file.SaveAs(HttpContext.Server.MapPath("~/Content/Images/Employees/") + file.FileName);
tbl_Employee.SignaturePath = file.FileName;
}
db.Tbl_Employee.Add(tbl_Employee);
db.SaveChanges();
return RedirectToAction("Index");
}
这是“创建视图”代码:
@model ClearanceFirst.Models.Tbl_Employee
@{
ViewBag.Title = "Create";
}
<h2>Create</h2>
@using (Html.BeginForm("Create", "Tbl_Employee", null, FormMethod.Post, new { enctype = "
multipart/form-data" }))
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>Tbl_Employee</h4>
<hr />
<div class="form-group">
@Html.LabelFor(model => model.SignaturePath, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
<input id="signaturePath " title ="upload images " type="file" name="file" />
@Html.ValidationMessageFor(model => model.SignaturePath, "", new { @class = "text-danger" })
</div>
</div>
这是“索引视图”代码:
<td>
@if (!string.IsNullOrWhiteSpace(item.SignaturePath))
{
<img width = "70" height = "50"
src="~/Content/Images/Employees/@Url.Content(item.SignaturePath)"
alt= "Alternate Text"/> }
</td>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
上传的图像将转换为二进制格式,然后将其保存到SQL Server数据库表。
检查下面给定的链接以获取更多信息,如何从ASP.NET MVC中的SQL Server上载和检索映像,
。
将图像URL存储在数据库中,并将其在ASP.NET MVC 。
中使用
The uploaded Images will be converted to Binary format then saved to SQL Server Database table.
Check the below given links for more information, how to upload and retrieve Images from Sql Server in ASP.NET MVC,
Save and Retrieve Image from SQL Server Database in ASP.Net MVC.
Store an Image URL in database and use it in ASP.NET MVC.