2009-07-01 16 views
0

私は自分のサイトから企業の電子メールの送信を統一して簡単に行うことができ、自分自身の電子メールを編集することができます。だから、WYSIWYGエディタを使ってC#Windowフォームアプリケーションですべての電子メールを管理するために私はスケッチしています。電子メールはSQL-DBに格納されていますC#で電子メール送信アプリケーションを構築する

しかし、いくつかのヒントと、いくつかの送信者のロジックに関する要点が必要です。

いくつかの送信者は、サイトのサインアップなどからトリガーされますが、一部の送信は、検索一致メール通知などのインターバルベースで、5分から深夜までの間隔で送信されます。

私のジレンマはこれです: どのようにしてインターバルベースの送信をうまく処理できますか?ある種のデアモンやサービスを実装して、指定された間隔でプロシージャを保存し、ヒットがあれば送信をトリガすることはできますか?アプリケーションが電子メールコンテンツの管理とschedueled sendoutsの両方を処理できる場合(5分のチェックと深夜はすべて)

また、間隔に基づく送信に取り組むためのスマートな方法はありますか?

Thankfullこの

答えて

2

スケジュールされた電子メールには、それを処理できる方法がいくつかあります。

データベース内のすべてを管理するだけでよく、SQL 2005以上であれば、データベースメール機能が組み込まれています。 http://msdn.microsoft.com/en-us/library/ms175887.aspx
メンテナンスしている電子メールのキューをチェックするスケジュールされたジョブによって、定期的な電子メールを送信することができます。

あなたのコード内の電子メールを処理したい場合は、System.Net.Mailを使用することができます。スケジューリングは、WindowsサービスまたはOSの定期的なタスクによって処理できます。 http://support.microsoft.com/kb/226795

0

に取り組む方法についてのヒントやポインタのキューのいくつかの並べ替えは、あなたのために理想的です。リクエストをキューに置くと生成されます。トリガーでは、UIと同様に要求をキューに入れることができます。そしてofcourseの私はあなたのコードをのことをやっている期待(SMTP)

0

これは非常に広い質問ですが、あなたは、SQL Serverを使用している場合は、内蔵の電子メールオプションの多くを持っている。中に組み込まれてもキューとスケジューラ。

+0

のようなスケジューリングエンジンを試してみてください?追加/編集/削除など – Andreas

+0

@ ads81 SQL 2008で利用可能なSQL Management Objectsライブラリを使用すると、下の任意のバージョンで利用できるSQLDMOを使用できます – BinaryMisfit

1

Google for "C#windows service" - デーモンと同等のサービスで、バックグラウンドで動作するプログラムを書く理想的な方法です。サーバ上で自動的に起動し、ユーザはログインする必要はありません始まる。

一度にサービスをに数秒間作成し、シャットダウンする時間かどうか、または送信する電子メールのデータベースをポーリングするかどうかを確認します。あなただけのユーザーがサインアップしているときに実行されているものは何でもに電子メールを送信するためにコードを追加することができ、サインアップメールの

http://www.systemnetmail.com/

関連する問題