2011-06-28 10 views
0

ページヒットに対する応答としていくつかのメールを送信したいと思います。私はそのページがメールが送信されるのを待たずにSendAsyncを待っています。テストでは、それが判明その "<%の@ページ非同期="、例えば、 "...%>" 真ASP.NETページでSendAysncを呼び出す

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CallbackHandler.aspx.cs" Inherits="MyWebRole.CallbackHandler" Async="true" %> 

が必要でした。しかし、SendAsyncが呼び出され、電子メールが送信されても​​、私はまだ500のエラーが発生しています。ここで私が使っていることがあります。その間、私は

sc.SendCompleted += ((sender, e) => 
{ 
    if (e.Error == null) 
    { 
     newPayment.transmitted = db.GetSQLDate(); 
     db.SubmitChanges(); 
    } 
    else 
    { 
     newPayment.exceptions = e.Error.Message + Environment.NewLine + e.Error.StackTrace; 
     db.SubmitChanges(); 
    } 
}); 
sc.SendAsync(mm, null); 

これをステージングする正しい方法は何ですか(=「true」を非同期で動作する)「送信」に戻って戻ってきましたか?

+0

コードを投稿して、どのような例外がどの行にスローされているのかを説明してください。 –

答えて

1

何らかの種類のキューにポストし、別のサービスの別のスレッドでキューを処理することをお勧めします。

関連する問題