c#e-mail 'を'アドレスからユーザーが提供するものに変更する
-
02-10-2019 - |
質問
ユーザーがシステムから電子メールを送信できるアプリがあります。ユーザーが電子メールアドレスを指定することができ、電子メールの出発点として使用するいくつかの標準テンプレートを提供します。
電子メールを送信するとき、彼らが提供したアドレスを「返信」として使用しますが、「from」の電子メールのアドレス(当然)はシステムのように見えます( 'submit@ourserver.com'から) 。
スパムフィルターや自動ブロッキングに巻き込まれずにこれを変更する方法はありますか?受け取った電子メールを実際に作成した人については、受信者を混同しないことを好みません。
解決 3
OPSの人々と話し合い、Atomitonの方法を試した後、これは実際には不可能であることがわかりました。
他のヒント
ジェフ・アトウッドの紹介をします コーディングホラー プログラムの送信に関する記事。それは、あなたの電子メールがスパムフィルターなどに巻き込まれないようにするためにあなたが取るべきステップを長さで説明します...
このコードを使用します:
public static bool sendEmail(string fromName, string fromEmail, string body, string subject, string toEmail) {
String strReplyTo = fromEmail.Trim();
String strTo = toEmail;
String msgBodyTop = "Email from: " + @fromName + "(" + @fromEmail + ")\n"
+ "" + " " + DateTime.Now.ToLongTimeString()
+ " FROM " + HttpContext.Current.Request.Url.ToString + " : \n\n"
+ "---\n";
MailMessage theMail = new MailMessage(fromEmail, strTo, subject, msgBodyTop + body);
theMail.From = new MailAddress(strReplyTo, fromName);
SmtpClient theClient = new SmtpClient(ConfigurationManager.AppSettings["SMTP"].ToString());
theClient.Send(theMail);
return true;
}
それは私のために働いているようです...
所属していません StackOverflow