데이터베이스에서 직원을 가져오고 사용자가 세부 정보를 편집 할 수 있도록 매개 변수로 id를 사용하는 편집 작업 메서드를 만들려고합니다. 여기에는 편집 작업을위한 코드가 있습니다.매개 변수 문제가있는 MVC 5 라우팅
public ActionResult Edit(int id)
{
EmployeeData eData = new EmployeeData();
Employee employee = eData.Employees.Single(x => x.ID == id);
return View(employee);
}
}
이 내 라우터 설정
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
나는 내가
이 매개 변수 사전이 포함이 오류 메시지가 무엇입니까 원하는 result.And를 얻을 수 속성 라우팅 여전히 수 없습니다를 사용하여 시도 'WebApplication1.Controllers.EmployeeController'의 'System.Web.Mvc.ActionResult Edit (Int32)'메서드에 대해 nullable이 아닌 'System.Int32'형식의 매개 변수 'id'에 대한 null 항목입니다. 선택적 매개 변수는 참조 유형, 널 입력 가능 유형 또는 선택적 매개 변수로 선언되어야합니다. 매개 변수 이름 : 매개 변수는
"Employee/Edit/100"은 완벽하게 작동하지만 URL에 ID를 제공하면 완벽하게 작동하지만 url이 id 매개 변수를 암시 적으로 취하도록합니다. – Kushal