Я установил E_id в качестве первичного ключа. Моя функция редактирования не работает. Она постоянно выдает ошибку. Но мои функции создания и индексирования работают хорошо. В чем будет проблема моего кода? Это ОШИБКА
[ArgumentException: словарь параметров содержит пустую запись для параметра 'id' необнуляемого типа 'System.Int32' для метода 'System.Web.Mvc.ActionResult Edit (Int32)' в 'BusinessObjects.Controllers.EmployeeController».Необязательный параметр должен быть ссылочным типом, обнуляемым типом или быть объявлен как необязательный параметр.Имя параметра: параметры]
public ActionResult Index()
{
EmployeeBusinessLayer employeebusinesslayer = new EmployeeBusinessLayer();
List<Employee> employees = employeebusinesslayer.Employees.ToList();
return View(employees);
}
[HttpGet] //Create after this Get
[ActionName("Create")] //old name of function
public ActionResult Create_get()
{
return View();
}
[HttpGet]
public ActionResult Edit(int id)
{
EmployeeBusinessLayer employeebusinesslayer = new EmployeeBusinessLayer();
Employee employee = employeebusinesslayer.Employees.Single(emp => emp.E_id == id);
return View(employee);
}
[HttpPost] //Create after this Get
[ActionName("Create")]//old name of function
public ActionResult Create_post()
{
if (ModelState.IsValid)
{
Employee employee = new Employee();
UpdateModel(employee); //Updatemodel for employee - Call for new entries
EmployeeBusinessLayer employeebusinesslayer = new EmployeeBusinessLayer();
employeebusinesslayer.AddEmployee(employee);
return RedirectToAction("Index");
}
return View();
}
}
}