2012-02-06 7 views
6

Per la mia prima domanda, ho il tipico scenario di e-com web in cui l'utente può ordinare vari prodotti e quindi ricevere e-mail di conferma. Ho fatto molte ricerche sul modo migliore per inviare e-mail per questa applicazione, e spero che qualcuno possa indicarmi le giuste direzioni.Generazione di più email HTML/testo codificate T-SQL

Posso inviare testo in chiaro per confermare le e-mail dall'app o dal database, ma ora voglio cambiare le cose creando una serie di modelli HTML da utilizzare per l'invio di e-mail. Ci saranno più modelli HTML e più contenuti e-mail. Quando l'utente effettua un ordine, l'ordine viene registrato nel database, che determina quindi, tramite stored proc, il tipo di prodotto/ordine e seleziona il nome del file modello appropriato, il contenuto dell'email e sostituisce tutto il testo chiave con l'utente/l'ordine informazione.

Allo stesso tempo, mi piacerebbe che l'e-mail fosse codificata anche con la versione di testo, così posso inviare una e-mail contenente entrambi i tipi, ed essere fatta.

È possibile eseguire questa operazione in SQL Server 2008 R2 oppure devo inviare nuovamente le informazioni sul contenuto all'app e quindi inviare l'e-mail? Il problema che mi preoccupa di quest'ultimo è che potrebbe causare qualche ritardo sul sito in quanto comunica avanti e indietro con il database.

Inoltre, mi piacerebbe passare a Amazon SES, che è facilmente utilizzabile con .Net, ma non sono ancora stato in grado di configurare SQL 2008 R2, quindi non sono sicuro che si tratti di un errore al mio fianco, o un problema di compatibilità.

Le basi: applicazione: NET 4.0 Database: SQL 2008 R2

risposta

6

Il requisito chiave qui sta inviando le versioni HTML e il testo del messaggio nella stessa e-mail. La posta del database SQL Server non supporta l'invio di messaggi MIME composti da più parti: se si desidera eseguire questa operazione, è necessario inviare la posta dall'applicazione.

Command reference for sp_send_dbmail - nota che il parametro @body_format può essere HTML o testo, non entrambi.