public ActionResult Create([Bind(Include = "studentID,Full_Name, DateOfBirth,MembershipID,Contact_Number,Emergency_Name,Emergency_Number,Expiry,Notes,ImagePath,ImageFile")] Student student)
{
if (student != null && student.ImageFile != null)
{
string fileName = Path.GetFileNameWithoutExtension(student.ImageFile.FileName);
string extension = Path.GetExtension(student.ImageFile.FileName);
fileName = fileName + DateTime.Now.ToString("yymmssfff") + extension;
student.ImagePath = "~/Image/" + fileName;
fileName = Path.Combine(Server.MapPath("~/Image/"), fileName);
student.ImageFile.SaveAs(fileName);
}
db.Students.Add(student);
db.SaveChanges();
my string fileName
возвращает null
, по какой-то причине это работало, но я обновил базу данных после того, как она возвращает null
Это мое мнение
@using (Html.BeginForm("Create", "Students", FormMethod.Post, new { enctype="multipart/form-data" }))
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>Student</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.Label("Student Image", htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
<input type="file" name="ImageFile" />
</div>
</div>
Не уверен почему это происходит, когда я переписал код еще раз, чтобы быть уверенным, но он все еще возвращает null