에서 슬래시 공백 I가 내 Global.asax에 (MVC 3 웹 프로젝트)에 정의 된 다음과 같은 경로 :MVC 3 - 경로
routes.MapRoute(
"BlogCategory", // Route name
"Blog/Category/{*category}", // URL with parameters
new { controller = "Blog", action = "Index", category = "" } // Parameter defaults
);
그리고 내 행동은 다음과 같이 찾고, 카테고리 매개 변수를 허용합니다
public ViewResult Index(string category, int page = 1)
{
PostListViewModel viewModel;
if (string.IsNullOrEmpty(category))
{
....show all cats else show only the one passed in
이 잘 작동하고 적절하게 내 결과를 필터링, 컨트롤러에 이르기까지 범주를 전달합니다. 범주 중 하나가 내가이 같은 모양을 만들 때
내 문제가있어입니다 카테고리 이름 :
:Projects/Lab
(공간을 기록하고 슬래시)
이 이런 유사한 URL을 생성
/Blog/Category/Projects%20/%20Lab
내가 링크를 수행 할 때,이 오류 얻을 :
을 0디버깅 할 때 인덱스 동작에 도달하지 않습니다.
내 질문은이 작업을 수행하려면 어떻게해야합니까? 아니면 발생하지 않도록 카테고리 이름을 만들 때 입력 유효성 검사를해야합니까?
대신 카테고리 ID를 전달한 것으로 생각하세요? – Tyrsius
입력 된 값에 맞게 트림을 수행해야합니다. 공백을 확인하는 것뿐만 아니라 일부 문자가 URL ("Ñ"또는 다른 영어 이외의 문자)에 표시되지 않습니다. 다른 언어가 있다는 것을 기억하십시오. 그래서,이 모든 것을 피하기 위해서 ... 나는 당신이 카테고리 ID를 찾으러가는 것이 좋습니다. – Romias