2016-11-18 2 views
0

내보기에 이미지와 클릭을 표시하는 코드 섹션이 있습니다. URL은 사이트의 페이지에 대한 것이고 해당 조치 방법으로 안내합니다. URL의 일부로 매개 변수가 있지만 Action 메서드에서 매개 변수가 null을 표시합니다 .Hence 나는 적절한 페이지로 리디렉션되지만 작업 메서드 내부의 기능은 작동하지 않습니다.href 링크 매개 변수 값을 전달하지 않음

여기 내 코드입니다.

보기 :

<a class="lnkImage" href="@item.ImageURL" target="_blank"><img id="PrivateimgPreview" src="@item.ActualImage"/></a> 

나는 데이터베이스에서 얻고 @ item.Image URL의 값은 http://localhost/TestProject/Home/DemoPage/b9f074fc-f86c-4866-a7b3-33e43025293f

입니다 그리고 홈 컨트롤러 내 액션 메소드는

public ActionResult DemoPage(string blockId) 
{ 
    //Some code here 
    return(View); 
} 

이있다 Route.config의 매핑 경로입니다.

routes.MapRoute(
      name: "Default", 
      url: "{controller}/{action}/{id}", 
      defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
     ); 

무엇이 누락 되었습니까?

+0

경로 테이블의 모양은 어떻습니까? RegisterRoutes 메서드를 게시 할 수 있습니까? – SteveR

+1

블로킹 ID에서 ID를 – Swetha

+0

으로 변경하십시오. 매개 변수 이름을 변경하면 문제가 발생합니다. 그것을 바꿀 것입니다. – TheFallenOne

답변

1

나는 당신이 필요가 있다고 생각을 하나의 변화 단지 'ID'에서 'BLOCKID'또는 다음 경로를 추가 :

routes.MapRoute(
      name: "Default", 
      url: "{controller}/{action}/{blockId}", 
      defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
     ); 

나는 그냥 서명에 매개 변수의 이름을 변경보다는 더 의미가 생각 이 동작 방법에 대해 거의 동일한 경로를 생성합니다.

관련 문제