경로 값을 포함한 URL.Action ()
ASP.Net MVC 4 앱이 있으며 다음과 같은 Url.Action 도우미를 사용하고 있습니다. @Url.Action("Information", "Admin")
이 페이지는 새 항목을 추가하고 관리자 프로필을 편집하는 데 사용됩니다. URL은 다음과 같습니다.
Adding a new: http://localhost:4935/Admin/Information
Editing Existing: http://localhost:4935/Admin/Information/5 <==Admin ID
나는에있을 때는 Editing Existing
사이트의 섹션과 내가 다음 링크를 클릭 새 관리자를 추가 할 것을 결정한다 :
<a href="@Url.Action("Information", "Admin")">Add an Admin</a>
그러나 위의 링크가 실제로 http://localhost:4935/Admin/Information/5
. 이는 내가 해당 페이지에서 기존 관리자를 편집 할 때만 발생합니다. 사이트의 다른 모든 곳에서 올바르게 연결됩니다.http://localhost:4935/Admin/Information
다른 사람이 본 적이 있습니까?
최신 정보:
RouteConfig :
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
현재 라우팅 스키마를 기반으로 생성 된 mvc의 발신 URL입니다.
정보 작업 방법에는 id 매개 변수가 필요하고 경로 컬렉션에는 현재 요청 된 url (/ Admin / Information / 5)의 ID가 있으므로 id 매개 변수는 기존 경로 컬렉션 값에서 자동으로 가져옵니다.
이 문제를 해결하려면 UrlParameter를 사용해야합니다.
<a href="@Url.Action("Information", "Admin", new { id = UrlParameter.Optional })">Add an Admin</a>
이 형식으로도 사용할 수 있습니다.
<a href="@Url.Action("Information", "Admin", null)"> Admin</a>
참고 URL : https://stackoverflow.com/questions/19107061/url-action-include-route-values
'IT Share you' 카테고리의 다른 글
자바 스크립트에서 unshift () 대 push ()의 시간 복잡성 (0) | 2020.12.08 |
---|---|
Cygwin ls 명령을 찾을 수 없습니다. (0) | 2020.12.08 |
차단 및 비 차단 하위 프로세스 호출 (0) | 2020.12.08 |
Phoenix Framework에서`def`와`defp`의 차이점은 무엇입니까? (0) | 2020.12.08 |
현재 디렉토리를 bash 기록에 저장 (0) | 2020.12.08 |