public class EmailHelper
{
const char emailSplitter = ',';
public static void Email(string toAddress, string fromAddress, string subject, string attachmentFile, string smtphost, int port)
{
string[] emails = toAddress.Split(new char[] { emailSplitter }, StringSplitOptions.RemoveEmptyEntries);
if (emails.Length > 1)
{
foreach (var email in emails)
{
Email(email.Trim(), fromAddress, subject, attachmentFile, smtphost, port);
Thread.Sleep(1000);
}
return;
}
MailMessage message = new MailMessage();
message.To.Add(new MailAddress(toAddress));
message.Subject = subject;
message.From = new MailAddress(fromAddress);
message.Body = subject;
if (File.Exists(attachmentFile))
{
message.Attachments.Add(new Attachment(attachmentFile));
}
SmtpClient smtp = new SmtpClient(smtphost, port);
smtp.Credentials = CredentialCache.DefaultNetworkCredentials;
smtp.Send(message);
}
}
Merhabalar,
Uzun zamandan sonra yine arsive katmam gereken bir post cikti :) Herhalde bu yukaridaki kodu 10-15 kere tekrar tekrar yazmisimdir. Yaptigi is aslinda koddan da anlasilacagi uzere cok basit. Bir SMTP server (host) kullanarak parametreleri ile belirttiginiz maili olusturup atiyor. Eger mailinizde attachment yoksa o parametreyi bos gecebilrisiniz.Ayrica toAddress parametresine ',' ile ayrilmis mail adresleri koyabilirsiniz. Boylece birden cok kisiye mail atacaktir.
Herkese kolay gelsin.