Orchard CMS - Как использовать тематические атрибуты и атрибуты httppost вместе

Я работаю с Orchard 1.7.2, и в моем пользовательском модуле у меня есть ряд действий контроллера, украшенных атрибутом [Themed].

Моя проблема в том, что когда я также украшаю любой из них атрибутом [HttpPost], тема перестает работать, когда используется это действие.

Кто-нибудь сталкивался с этим раньше?

1 ответ

Конечно, вы говорите действию, что оно не должно выполняться для запросов get, только для запроса post. Действие, помеченное как post, используется для ajax-запроса или для отправки формы на сервер. (Поскольку вы вправе сделать запрос на публикацию страницы, я удалил эту часть, но снова не рекомендуется)

Попробуйте внедрить IWorkContextAccessor, RequestContext и IThemeManager в ваш конструктор, а затем в своем действии сделайте что-то вроде этого:

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

Я не знаю, работает ли это, но, по крайней мере, у вас есть отправная точка.

Другие вопросы по тегам