If you want to embed your images in an email sent using ASP.Net server instead than using URLs you can use an AlternateView and use the mime standard to embed them:
using System.Net.Mail;
protected void SendBTN_Click(object sender, EventArgs e) {
// Send email using ASP.Net:
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
message.From = new System.Net.Mail.MailAddress(Email_From);
message.To.Add(Email_To);
message.Bcc.Add(Email_BCC);
message.Subject = Email_Subject;
message.IsBodyHtml = true;
message.AlternateViews.Add(getS4HRegisteredUsersWithoutAnOrderBody_ForEmail(Customer.Name));
SmtpClient smtp = new SmtpClient("subdom.myserver.com");
smtp.Send(message);
// Show some "Email Sent" msg and all that stuff or return ok.
}
private AlternateView getS4HRegisteredUsersWithoutAnOrderBody_ForEmail(String CustName) {
StringBuilder body = new StringBuilder();
body = SkyGuard.MIS.Email.getTemplate("S4HRegisteredUserWithoutOrder.htm");
body.Replace("[SUBJECT]", Email_Subject);
body.Replace("[CUSTNAME]", CustName);
//These keys are set into the image src attribute
body.Replace("[LOGO_IMGSRC]", "cid:logo"); //Notice that we are adding a cid:id as the image source
body.Replace("[SUPPORT_PHOTO_IMGSRC]", "cid:avatar");
body.Replace("[SIGNATURE_IMGSRC]", "cid:signature");
AlternateView view = AlternateView.CreateAlternateViewFromString(body.ToString(), null, System.Net.Mime.MediaTypeNames.Text.Html);
//Company Logo
LinkedResource logo = new LinkedResource(System.Web.HttpContext.Current.Server.MapPath("~/imgs/Emails/Company_logo.png"), System.Net.Mime.MediaTypeNames.Image.Jpeg);
logo.ContentId = "logo";
LinkedResource avatar = new LinkedResource(System.Web.HttpContext.Current.Server.MapPath("~/imgs/Emails/Support_Avatar.png"), System.Net.Mime.MediaTypeNames.Image.Jpeg);
avatar.ContentId = "avatar";
LinkedResource signature = new LinkedResource(System.Web.HttpContext.Current.Server.MapPath("~/imgs/Emails/Support_Signature.png"), System.Net.Mime.MediaTypeNames.Image.Jpeg);
signature.ContentId = "signature";
view.LinkedResources.Add(logo);
view.LinkedResources.Add(avatar);
view.LinkedResources.Add(signature);
return view;
}
Excellent website, thanks for share this article with us