C#のコードでsmtp経由でメールを送信する方法を知っています
gmail smtp を設定すると、localhost では問題なく動作しますが、アップロードしてオンラインにすると、gmail (smtp.gmail.com) の設定が機能しません。アップロード後、godaddy で毎回設定を (relay-hosting.secureserver.net) に変更する必要があります
今私の質問です!コードまたはオンラインでローカルホストにいるのかどうかを確認してから、設定を動的に変更する方法はありますか?設定をdbに保存している私の作業コードは
mm.LoadByPrimaryKey(4);//get body , subject etc from db
mc.LoadByPrimaryKey(1);// get settings from db (host, from , port etc)
var maTo = new MailAddress(strEmail, userName);
var mMailMessage = new MailMessage
{
Subject = mm.Subject,
Body = strBody,
IsBodyHtml = true,
Priority = MailPriority.High,
From =new MailAddress(mc.AdminEmailAddress),
DeliveryNotificationOptions= DeliveryNotificationOptions.OnFailure
};
mMailMessage.To.Add(maTo);
var mSmtpClient = new SmtpClient
{
UseDefaultCredentials = false,
Host = mc.Host,
Credentials = CredentialCache.DefaultNetworkCredentials,
DeliveryMethod = SmtpDeliveryMethod.Network};
mSmtpClient.Send(mMailMessage);
オンラインであるかローカルホスト環境で開発しているかに関係なく、毎回設定を変更し
たくありません
if(myconnection ==localhost) then fetch gmail credentials
else if (myconnection==online) then fetch godaddys credentials