2013-09-28 23 views
0

我想用actionmailer MVC不同情況下使用多個發件人的電子郵件(smtp)。ActionMailer MVC - 在webconfig或C#中設置多個SMTP,電子郵件發件人

例如,如果是新用戶註冊,那麼確認將與[email protected]電子郵件一起發送。

如果用戶與其他用戶取得聯繫,發件人的電子郵件地址爲[email protected]

所以我需要設置3-4 smtp,並在actionmailer中使用它們。到目前爲止,webconfig不能支持多個smtp。 Thks

回答

1

MailerBase有一個屬性From可用(除其他外),您可以在C#中設置,取決於您使用的任何邏輯。然後結合起來,與<appSettings>從,你可以做這樣的事情在web.config:

<appSettings> 
    <add key="RegistrationFromAddress" value="[email protected]" /> 
    <add key="ContactFromAddress" value="[email protected]" /> 
</appSettings> 

然後在你的控制器

public class MailController : MailerBase 
{ 
    public EmailResult RegisterEmail() 
    { 
     From = System.Configuration.ConfigurationManager.AppSettings["RegistrationFrom"]; // or ContactFromAddress if you want 
    } 
} 
+0

對於我明白了,你需要設置帳戶,以發送電子郵件。你必須在webconfig中使用mailSettings/smtp來做到這一點。我的目標是設置多個帳戶,並在正確的時間選擇合適的帳戶。 – alex

+0

@alex有些電子郵件提供商(特別是您支付的或者是主機包的一部分),您可以從一個批准的帳戶發送多個發件人地址。但是,如果你不能,你可能會實現你自己的'IMailSender',你可以在其中將每個賬戶的基礎'SmtpClient'設置改爲你需要的。查看https://bitbucket.org/swaj/actionmailer.net/wiki/Home#!advanced-stuff瞭解更多信息。 –

+0

是的,你是對的,有些提供商提供。我給你答案。但我真正的問題是關於那些不提供多個帳戶的問題,例如hotmail。我如何在web.config中設置多個SMTP?或者我如何使用IMailSender設置多個發件人帳戶(帶有代碼)? – alex

相關問題