Html.Action
메서드를 사용하여 다른 뷰를 호출했습니다. 사용자가 액션 링크를 클릭하면 하위 뷰 내부의 매개 변수를 사용하여 동일한 액션을 호출하려고합니다.하위 작업에 대한 작업 링크
Html.ActionLink("link", "Configure", new { id = 2 })
액션 '구성은'오직 자식 요청에 의해 액세스 :이 코드를 작성할 때
는이 오류 메시지가 표시됩니다.
어떻게이 문제를 해결할 수 있습니까?
편집 : 나는이 문제를 reexplain하려고합니다 :
내 부모보기 ConfigureMethod.cshtml이다. 나는 그런 아이 아이 뷰를 호출
@Html.Action("Configure", "Payment");
그것은이 컨트롤러로 이동하고 ConfigureMethod보기 내부 (partialview되지 않음) actionresult를 반환
[ChildActionOnly]
public ActionResult Configure()
{
}
가 구성보기 안에 내가 작업 링크 그렇게합니다
[ChildActionOnly]
public ActionResult Configure(int Id)
{
}
: 그것은해야
Html.ActionLink("link", "Configure", new { id = x.Id })
이 컨트롤러로 이동
그러나 childonly 속성을 쓰면 오류가 발생합니다. 이 속성을 제거하면 작동하지만 결과는 ConfigureMethod보기가 아닌 직접 제공됩니다.
감사합니다.
게시물에 관한 문제를 해결하기 위해 질문을 편집했습니다. – mavera
@mavera, Html.ActionLink (....)는 와 같은 링크를 생성합니다. 링크를 클릭하면 다른 페이지로 리디렉션됩니다. 따라서 액션 [ChildAction] 특성을 가져서는 안됩니다. where Html.Action (...)은 부모보기의 컨텍스트에서보기/부분보기를 반환합니다. [ChildAction]은 부모 컨텍스트에서 동작을 직접 트리거 할 수는 없지만 함께 트리거 할 수 없음을 의미합니다. – Manas