2012-03-18 9 views
4

ASP.NETページから非同期電子メールを送信するとわからないことの1つは、SendAsyncを呼び出すと別のスレッドで実行する必要があるため、ページが実行フローを継続し、送信の時間取る。ASP.NETのSendAsync(非同期電子メール)とイベントハンドラ/ライフサイクル?

  1. どのようにすれば、同じページでSendCompletedEventHandlerを使用してメソッドを呼び出すことができますか?その時までにページオブジェクトが存在しない可能性があり、このフォーラムではそのことを行う例があります。

  2. 私はSendCompletedEventHandlerで実行する静的メソッドを持つ可能性のある別のクラスを持つことができると私は予想できるエラーを報告することができました。 しかし、そこで例外が発生している場合、例外はページレスポンスの一部として発生します。だから私はSendAsyncが同じスレッド上で動作するように見えるので、ページが実行されるのを待って、それによって発生したエラーに関する情報を返します。

どのようにする必要がありますか?それでは非同期の意味は何ですか?

完全に混乱しています...誰でも手伝いできますか?

UPDATE:ハンドラは静的であるため、それが使用したり、オブジェクトの状態に依存しないため、まだ存在しているページオブジェクトを必要としない私をたくさんHERE IS THE LINK

答えて

0

を助けたポストを見つけました。コールバックハンドラを呼び出す必要があるときは、元のオブジェクトが存在しないことを心配することなくメソッドを呼び出すことができます。

+0

返信ありがとうございます...私はDBに送信される電子メールを格納しています。何をしたいのですか?正常に送信された電子メールをすべて削除しています...どうすればいいですか? – user1150440

関連する問題