2013-12-17 3 views
0

나는 Orchard 1.7.2를 사용하고 있으며 사용자 정의 모듈에는 [Themed] 속성으로 장식 된 여러 컨트롤러 동작이 있습니다.과수원 CMS - themed 및 httppost 속성을 함께 사용하는 방법

제 문제는 그 중 하나를 [HttpPost] 속성으로 장식 할 때 그 동작이 사용될 때 테마가 작동하지 않는다는 것입니다.

이전에이 문제가 발생 했습니까?

답변

0

물론, 게시 요청에 대해서만 요청을 실행해서는 안된다고 말하고있는 것입니다. post로 표시된 작업은 아약스 요청이나 서버에 양식을 보내는 데 사용됩니다. (요점은 페이지에 대한 게시물 요청을하는 것이 합당하지만 다시 삭제할 수는 없습니다.)

생성자에 IWorkContextAccessor, RequestContext 및 IThemeManager를 삽입 한 다음 작업을 수행하십시오. 다음과 같이하십시오 :

contextAccessor.GetContext().CurrentTheme = themeManager.GetRequestTheme(requestContext); 

적어도 작동하는지는 모르지만 적어도 시작 지점은 있습니다.

+0

아니요 ... POST 요청이 합법적으로 응답을 반환 할 수 있으며 그 응답은 HTML 문서가 될 수 있습니다. 양식 제출시 고려하십시오 ... 양식의 "조치"URL은 귀하가 볼 수있는 페이지를 완벽하게 반환 할 수 있습니다. 내 질문은 반환 된 페이지를 테마로 가져 오는 방법입니다. – Hades

+0

당신이 옳아.하지만 내가 아는 한 오차드는 PRG 패턴 (http://en.wikipedia.org/wiki/Post/Redirect/Get)을 따른다. 모든 ASP.NET MVC 응용 프로그램은이 패턴을 따라야합니다. 내가 할 수있는 몇 가지 코드를 넣어 내 대답을 편집합니다. – jmgomez