私は現在、WebApi と一緒に MVC Web サイトを実行しており、電子メール機能を組み込むことを検討しています。
かなり大きなアプリケーションであり、MVC と WebApi の間でそのほとんどを再利用できるようにしたいので、ほとんどのロジックをサービス レイヤーに抽象化する非常に軽量なコントローラーがあります。
すべての例が Web プロジェクト内から実行されているため、MVCMailerを使用するのをためらっています。WebAPI を使用する電話アプリを作成した場合、メール機能を利用することはできません。
独自のプロジェクトから実行できるかどうか疑問に思っていますか? これは、私がやろうとしていることの非常に大雑把な描写です。
MyProject.Web MyProject.WebApi
\ /
\ /
MyProject.Services
|
|
MyProject.Email
MVCMailerまたはActionMailerのいずれかを技術的に両方.Web
とも.WebApi
MVC4 プロジェクト として抽象化できますか?
そうでない場合は、スタンドアロン バージョンの Actionmailer.netまたは同等のPostalを使用しますが、機能は少し削減されます。
編集:詳細
もう少し考えてみると、mvc と webapi Web サイトの両方で自動的に展開されるように、電子メール ビューに対していくつかの派手なコピー ロジックを実行する必要があるため、実行するのは難しいように思えます。
おそらく、電子メールを独自の Web サイトに分離し、サービス層に電子メールを送信するための Web 要求を作成させ、適切に抽象化する方がよいでしょう。
MyProject.Web MyProject.WebApi
\ /
\ /
MyProject.Services --http--> MyProject.Email
そうすれば、すべてのサーバーにsmtpをセットアップする必要がなく、1つのサーバーに電子メールを展開するだけでよいと思います。コメント歓迎
関連する質問