Вы не сможете использовать T4MVC ActionResults для этого, поскольку они имеют пустую реализацию ExecuteResult()
.
Я вижу два очевидных способа, которыми вы можете подойти к этому:
1.создать экземпляр контроллера, на котором лежит метод действия, который вы хотите вызвать, и затем вызвать его.Вы можете решить получить экземпляр из ControllerFactory вместо непосредственного создания экземпляра класса, хотя, если вы знаете, какой это тип, я бы пошел с созданием экземпляра экземпляра этого типа напрямую.
, чтобы получить контроллер изфабрика контроллеров по умолчанию, вы можете использовать
ControllerBuilder.Current.GetControllerFactory().CreateController(RequestContext requestContext, string controllerName);
. Возвращает IController
, поэтому вам нужно привести его к правильному типу контроллера, чтобы вызвать метод действия.Проще просто создать его экземпляр напрямую:)
2.Используйте решение для шаблонов электронной почты, например Почтовый , ActionMailer , MvcMailer или Kazi's Модуль шаблонов писем .Все они используют Razor, чтобы вы могли получать красивые шаблоны электронных сообщений.