Использование MvcMailer в не-MVC проекте - PullRequest
2 голосов
/ 04 декабря 2011

У меня есть служба Windows, которая должна периодически отправлять электронные письма.

Рядом с проектом службы Windows есть проект MVC 3, который отправляет электронные письма с помощью MvcMailer (прекрасно).

Я хочу использовать тот же движок для отправки электронной почты для службы Windows.

Как мне это сделать?

Импортировать двоичные файлы MVC и создать для этого один контроллер и новые представления? Будет ли это работать?

Сохранение его в базе данных и запрос моего веб-проекта на отправку электронной почты могут быть не лучшим решением, поскольку информация является результатом запроса и слишком велика для отправки в запросе.

Единственный другой вариант, который я вижу, - просто попросить веб-проект выполнить всю работу, но таким образом было бы не выгодно размещать службу Windows в другом сервисе для сохранения ресурсов приложения сайта. Как бы вы это сделали?

Ответы [ 3 ]

4 голосов
/ 21 июля 2012

В качестве альтернативы MVC Mail ActionMailer.NET теперь можно использовать отдельно от MVC.

Подробности описаны здесь

http://geeksharp.com/2011/07/06/actionmailer-0-6-released/

0 голосов
/ 05 декабря 2011

Я бы сказал, что вызов почтовой программы mvc из службы может быть излишним.Если предполагается, что в проекте mvc предусмотрена отправка API электронной почты для всех ваших других решений, тогда создание REST API может иметь смысл.Однако, если вы просто хотите перенести функциональность метода действия в службу Windows, я бы выбрал внутрипроцессный функциональный компонент.Если вы можете реорганизовать логику метода действия mvcmailer в другую сборку, почему бы просто не сделать это, а затем включить эту сборку в качестве зависимости в вашем решении службы Windows.Если вы можете предоставить общую цель почтовой программы и то, как она используется в веб-сценарии, это может помочь нам обеспечить лучшую архитектуру.

0 голосов
/ 04 декабря 2011

Почему вы считаете, что запрос на отправку mvcmailer нам слишком велик?Если у вас есть почтовый проект MVC, уже работающий и предоставленный через спокойный URL-адрес, он становится вашим почтовым сервисом и просто вызывает его как веб-запрос от вашего сервиса.

Вы можете обойти ограничения размера в своем запросе.быть проблемой.

...