[英]MVC routing null parameters error when i use two map-route on the same controller
[英]MVC Routing Null parameters error
在“ Index
頁面上,我具有指向“ Details
視圖的以下鏈接:
@Html.ActionLink("Details", "Details", new { id = item.ClubId })|
我的控制器期望一個整數:
public ActionResult Details(int ClubId)
{
var club = _service.GetClub(ClubId);
var model = AutoMapper.Mapper.Map<ClubViewModel>(club);
return View(model);
}
我每次都得到這個:
參數字典包含“ MyProject.Web.Controllers.ClubsController”中方法“ System.Web.Mvc.ActionResult Details(Int32)”的非空類型“ System.Int32”的參數“ ClubId”的空條目。 可選參數必須是引用類型,可為空的類型,或者必須聲明為可選參數。 參數名稱:參數
我知道這與路由有關,但是我嘗試將UrlParameter.Optional
為""
,並使ViewModel的ClubId可為空,但錯誤仍然存在。
如果我重新連接控制器以接受Club
對象並從Index視圖傳遞item
,那么一切都很好,並且在調試中填充了ClubId
,但URL中卻留有一個非常大的參數列表。
我真的不明白這里有什么問題嗎?
您的控制器需要一個名為ClubId
的參數,但您要傳遞一個名為id
的參數。 他們需要匹配。
您是否嘗試過使用ClubId而不是ID?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.