Desidero ottenere tutte le e-mail nella mia applicazione ASP.NET che ha un determinato destinatario CC. Per usarlo per le email future non volevo fare il polling per tutto il tempo per ottenerle. Ma non riesco a trovare un modo, come posso usare push per ottenere le email istantaneamente. Sono i loro quadri in C# per aiutarmi per questo?Notifica al client C#, quando il server SMTP riceve una nuova e-mail
Desidero connettermi con la mia applicazione a un server di posta e registrare un metodo "X". Sempre quando arriva un nuovo messaggio al server di posta, la mia applicazione deve essere notificata e la mia applicazione deve eseguire il metodo 'X'.
spero che questo è possibile con codice come questo:
void Application_Start()
{
...
ConnectWithTheSmtpServer();
RegisterMethodForNotification(DoSomethink);
...
}
void DoSomethink(Mail newMail)
{
// Do Somethink with the mail
}
EDIT:
ho fatto con la MailSystem.Net. Funziona molto bene ed è molto facile da implementare.
codice di esempio:
void Application_Start()
{
var worker = new BackgroundWorker();
worker.DoWork += new DoWorkEventHandler(StartIdleProcess);
if (worker.IsBusy)
worker.CancelAsync();
worker.RunWorkerAsync();
}
private void StartIdleProcess(object sender, DoWorkEventArgs e)
{
if (_imap != null && _imap.IsConnected)
{
_imap.StopIdle();
_imap.Disconnect();
}
_imap = new Imap4Client();
_imap.ConnectSsl(server-name, 993);
_imap.Login(username, passwort);
var inbox = _imap.SelectMailbox("INBOX");
_imap.NewMessageReceived += new NewMessageReceivedEventHandler(NewMessageReceived);
inbox.Subscribe();
_imap.StartIdle();
}
public static void NewMessageReceived(object source, NewMessageReceivedEventArgs e)
{
// Do something with the source...
}
Se si desidera che la funzionalità del server-push (tempo reale spinta, le notifiche push) e si desidera ospitare auto allora dovreste dare un'occhiata a: * [WebSync] (http: //www.frozenmountain.com) * [XSockets] (http://xsockets.net) * [Pokin] (http://pokein.com/) Se non si desidera installare e gestire il proprio tempo reale infrastruttura quindi potresti guardare [Pusher] (http://pusher.com), per chi lavoro. È possibile utilizzare la nostra [libreria .NET] (http://pusher.com/docs/rest_libraries#cs) e fare una semplice chiamata alla nostra API REST, che quindi spingere l'email/notifica a qualsiasi client di ascolto.Vale anche la pena di controllare il mio [re – leggetter