저는 입니다. MVC에 완전히입니다. 문제를 설명하는 동안 나에게 들러주세요. 내가 검색 할 수 있도록 경로 id 매개 변수를 기반으로, 나는 사용자 정의 사용자 컨트롤을 렌더링하기 위해 노력하고있어이 ActionResult에서MVC 3 매개 변수 사전에 null이 아닌 유형의 매개 변수 'id'에 대한 null 항목이 포함되어 있습니다.
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
: 내 기본 경로에 id
매개 변수를 통해 내 DB에서 데이터를 검색하기 위해 노력하고있어 요청 년대 페이지에 대한 관련 데이터
public ActionResult InitPageNav(int id)
{
PageModel page = PageNavHelper.GetPageByID(id);
return PartialView("UserControls/_PageNavPartial", page);
}
편집 *
public static MvcHtmlString CreateMenuItems(this HtmlHelper helper, string action, string text)
{
var menuItem = new TagBuilder("li");
var link = new TagBuilder("a");
//Get current action from route data
var currentAction = (string)helper.ViewContext.RouteData.Values["action"];
link.Attributes.Add("href", string.Format("/Home/{0}", action));
if (currentAction == action)
{
menuItem.AddCssClass("selected");
link.Attributes.Remove("href");
link.Attributes.Add("href", string.Format("/Home/{0}", currentAction.ToString()));
}
link.SetInnerText(text);
menuItem.InnerHtml = link.ToString();
return MvcHtmlString.Create(menuItem.ToString());
}
하지만 오류가 계속 :
The parameters dictionary contains a null entry for parameter 'id' of non-nullable type
어디에서 내가 잘못 될 수 있습니까?
은 정수가, URL에 필요한과 같이되어,
보기에서 링크를 어떻게 생성합니까? 샘플 생성 URL은 어떻게 생겼습니까? – nemesv
그래서 Url은 어떻게 생겼습니까?/컨트롤러/initpagenav/1? –
헬퍼 메서드를 사용하여 링크를 생성하고 있습니다. 게시물을 편집 할 것입니다. – dtsg