私はその主題から、あなたはたぶん「何が地獄か」と考えていることを知っています。しかし、私に説明させてください!レンダリングMVC MVCで参照されているDLLからの非MVCプロジェクトの部分ビュー
私は2つのプロジェクトがあります。 MyMVCWebsite - 別のWindows Azureのワーカーの役割で実行されている別のDLLプロジェクト - 窓紺碧 MyWebsiteWorker上で実行されているMVCのウェブサイトを。 MyMVCWebsiteは、コードの一部を使用するDLLとして参照します。
例えば/メール/ DailyNewsletter(モデル:userDetails)、私は電子メールと呼ばれるコントローラを持っているとアクションは、私たちが送った電子メールの異なるタイプのコントローラは私が/レンダリングできるようになる方法RenderPartialViewAsStringを公開
Email/DailyNewsletter/userDetailsを文字列に変換して、電子メールのHtmlBodyで送信することができます。
私はウェブサーバーからこれらの電子メールを送信したいと思うが、これはすべて素晴らしいと思いますが、私はそうではありません。 (あなたもEmailControllerの新しいインスタンスを作成することはできません)
明らかにこれは動作しません
For each user in usersToEmail
Dim _con as new EmailController
SendEmail(user.emailAddress, _con.RenderPartialViewAsString(user))
next
:
は、私のようなものを使用してMyWebsiteWorkerから部分ビューをレンダリングできるようにしたいです私は送信する電子メールの数が1000になる可能性があるので、この方法でやりたいと思っています。その負荷がWebサーバーにかかることは望ましくありません。