0

パスワードが期限切れになったときに私たちのフィールドワーカーに電子メールで連絡するアプリケーションを作成したいと考えています。私は、Active Directoryと通信する際に、ある種のC#アプリケーションを使用しています。グローバルリストの作成中に毎日実行するアプリケーションのタイプを選択する必要がありますか?

私はまた、ユーザーが毎日電子メールを受け取らないようにしたいと思っています。これはちょっと不快な音です。私が持っているアイデアはUIなしでWebアプリケーションを作成し、決してリセットされない電子メールユーザーのグローバルリストを持っていて、ただ更新されます(ユーザーは電子メールで追加され、パスワードの期限が切れなくなったら削除されます) 。そこで、そのリストに、samaccountnameと電子メールで送られた日を含むユーザーオブジェクトを入力します。それらがリストにある場合、私はそれらを再度電子メールしたくない。

しかし、いくつかの読書をすると、私は、複数の情報源が、非対話型のアプリケーションをスケジュールで実行することが良い方法ではないと言いました。代わりに、人々がWindowsサービスを好んでいるように思えました。これは私がよく知らないものです。

このようなものを実装するのにベストプラクティスは何でしょうか?私の考えは完全にはずれているかもしれません。どんな洞察もありがとう。

編集:新しい考え方 - おそらくSQLテーブルを使用する方が、グローバルリストよりも良いアイデアになるでしょう。

+3

なぜWindowsサービスか、[タスクスケジューラ](https://msdn.microsoft.com/de-de/library/windows/desktop/aa383614(v = vs)によって毎日実行される単純なコンソールアプリケーション.85).aspx)? –

+0

まず、あなたのウェブアプリはどのようにホストされていますか?例えば、それが紺碧の場合、あなたはwebjobsにアクセスするかもしれません。 –

+0

@TimSchmelter - 私はWindowsサービスで多くの経験がありませんでした。 Visual StudioにOnStartとOnStopメッセージが表示されているのがわかります。私のリストはOnStopでリセットされますか? –

答えて

0

はい、ストレージについては絶対に正しいです、sqlまたはnosqlはジョブを実行する必要があります。

私のアドバイスはあなたには、いくつかのデータベースにdescribiedした情報を格納することで、この方法は、あなたは、データに関すると長寿ストレージとしても(電源カットのようなシナリオで、ネットワークドロップまたはを確保ていますサーバーを簡単に再起動しても、送信メールに関する情報が失われることはありません)。シンプルコンソールアプリケーションtask schedulerを使用して

がうまくなります。それはあなたのニーズにもっと近いところで聞こえます(期間中の小切手と通知の実行)。

関連する問題