Я использую следующую функцию для редактирования записей сотрудника.Обновление записей с использованием Entity Framework и ASP.NET MVC5
public async Task<ActionResult> Edit([Bind(Include = "Id,EmployeeId,Name,FatherName,JoiningDate,EndDate,InitialSalary,CurrentSalary,CurrentAddress,PermanentAddress,ContactNumber,EmailId,Gender,DOB,DeptId,DigId,PFNo,BranchCode,Qualification")] Employee employee)
{
if (ModelState.IsValid)
{
string fileName = null;
if (Request.Files["ImageFileToUpload"]!=null)
{
///Saving the file to EmployeeImages folder with unique name.
HttpPostedFileBase file = Request.Files["ImageFileToUpload"];
fileName = UploadEmployeeImage(file);
}
else
{
///what condition I need to write here so that if no image selected then it will not update the image field?
///if I am writing
fileName = db.Employees.Find(employee.Id).PhotoPath;
///it’s showing error.
}
employee.PhotoPath = fileName;
db.Entry(employee).State = EntityState.Modified;
await db.SaveChangesAsync();
return RedirectToAction("Index");
}
ViewBag.DeptId = new SelectList(db.Departments, "DeptId", "DeptName", employee.DeptId);
ViewBag.DigId = new SelectList(db.Designations, "DegId", "DegName", employee.DigId);
ViewBag.BranchCode = new SelectList(db.Branches, "BranchId", "BranchName", employee.BranchCode);
return View(employee);
}
Я хочу обновить поле изображения, когда я выбираю изображение, иначе изображение сотрудника не должно меняться, но другие записи могут измениться.
Пожалуйста, сообщите, что мне нужно обновить в моем коде.
Я сделал то же самое, но вставляя нулевое значение, когда фотографии нет. –
Я обновил ответ. Также обратите внимание, что часть обновления находится внутри условия if. – sudhAnsu63
Это не будет обновлять запись, если имя_файла равно null. То, что я хочу, если имя файла является нулевым, тогда только имя файла не должно меняться, другая запись должна измениться. Другими словами, если имя файла равно null, то только точное имя не должно изменяться. –