クラス ライブラリで MvcMailer を使用したいと考えています。これは、基本的に、ソリューションの電子メールを作成して送信するためのワンストップ ショップです。それが MvcMailer の設計目的だと思いましたが、私の .cshtml ファイルが見つからないようです。私のスタートアップ プロジェクトにあるはずだと思います。
MvcMailer を他のプロジェクトから 100% 分離する方法はありますか?
ありがとう。
クラス ライブラリで MvcMailer を使用したいと考えています。これは、基本的に、ソリューションの電子メールを作成して送信するためのワンストップ ショップです。それが MvcMailer の設計目的だと思いましたが、私の .cshtml ファイルが見つからないようです。私のスタートアップ プロジェクトにあるはずだと思います。
MvcMailer を他のプロジェクトから 100% 分離する方法はありますか?
ありがとう。
これは、MvcMailerのドキュメントhttps://github.com/smsohan/MvcMailer/wiki/MvcMailer-Step-by-Step-Guide (以下の抜粋)によると不可能です。おそらく、その唯一の目的が目的である別のWebプロジェクトを持つことができます。メールを送信し、アプリケーションからのリクエストのみを受け入れる
バックグラウンドプロセスからの電子メール送信バックグラウンドプロセスから電子メールを送信する必要がありますか?はい、あなたが正しい。その通知メールが送信されるように、要求/応答サイクルをブロックしたくありません。代わりに、必要なのは、短い遅延の後に送信された場合でも、それを実行するバックグラウンドプロセスです。できることは次のとおりです。
メール関連のデータをデータベースに保存します。電子メールを送信するREST/SOAPWebサービスを作成します。これにより、メーラーがHttpContextにアクセスできるようになります。これは、コアASP.NETMVCフレームワークが正しく機能するために不可欠です。たとえば、ビューを検索し、URLを生成し、認証/承認を実行します。Webサービスを呼び出す簡単なアプリを作成します。これは、WindowsサービスアプリまたはWindowsスケジュールタスクで実行されている実行可能アプリである可能性があります。MvcMailerの将来のバージョンでは、これがサポートされる可能性があります。しかし、それは2つの理由のために難しいです:
MailMessageは、そのままではシリアル化できず、多くの複雑なフィールドと関連付けがあります。コアASP.NETフレームワークにはまだHttpContextが必要です:(