Click here to Skip to main content
Licence CPOL
First Posted 6 Mar 2007
Views 85,350
Downloads 212
Bookmarked 40 times

Sending email with an embedded image through ASP.NET

By jebarson | 6 Mar 2007
An article to send email from ASP.NET 2.0 by embedding an image in the content
7 votes, 38.9%
1
1 vote, 5.6%
2
2 votes, 11.1%
3
5 votes, 27.8%
4
3 votes, 16.7%
5
2.56/5 - 18 votes
μ 2.56, σa 2.85 [?]

Introduction

This article will help beginners to get a basic idea of mailing with an embedded image or object from ASP.NET 2.0 using SMTP Client.

Background

I wrote this code when one of my colleagues came up with a similar requirement of sending email from an application which will have an embedded image signature (not as an attachment).

Using the code

The code is very simple and pretty straightforward. As a prerequisite, you should have access to a mail server. Now create a MailMessage object and specify the sender and recipient address. Message Text is created as an AlternateView and a LinkedResource is pointed to the image or object you want to embed. Once you are done with this, just add the LinkedResource to the AlternateView and finally add the AlternateView to the MailMessage object text.

Dim msg As New MailMessage("sender mail address", "recipient mail address")
msg.Subject = "This is my first email through program"
msg.IsBodyHtml = True

Dim View As AlternateView
Dim resource As LinkedResource
Dim client As SmtpClient
Dim msgText As New StringBuilder

msgText.Append("Hi there,")
msgText.Append("Welcome to the new world programming.")
msgText.Append("Thanks")
msgText.Append("With regards,")
msgText.Append("")

'create an alternate view for your mail
View = AlternateView.CreateAlternateViewFromString(msgText.ToString(),
                                                Nothing, "text/html")

'link the resource to embed
resource = New LinkedResource((Server.MapPath("Images\007jvr.gif")))

'name the resource
resource.ContentId = "Image1"

'add the resource to the alternate view
View.LinkedResources.Add(resource)

'add the view to the message
msg.AlternateViews.Add(View)

client = New SmtpClient()
client.Host = "smtp.gmail.com" 'specify your smtp server name/ip here
'client.EnableSsl = True 
'enable this if your smtp server needs SSL to communicate
client.Credentials = New Net.NetworkCredential("username", "pwd")
client.Send(msg) 

Please rate the article and don't hesitate to write to me in case you have any doubts or concerns.

Please do check out my other articles which may help you out.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

jebarson

Software Developer (Senior)
Microsoft Corporation
India India

Member

Follow on Twitter Follow on Twitter
I work for Microsoft on MS technologies for application development. My interests include .net, WCF, Azure, Windows Phone, ASP.net, SL, WCF, WPF and many more.
 
You can visit my site at http://www.jebarson.info
 
Follow me on twitter @jebarson007

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
GeneralEmbedding Multiple Images (based on an existing HTML "template" file) PinmemberBrian Rickard15:15 13 Apr '08  
AnswerRe: Embedding Multiple Images Pinmemberjebarson6:11 15 Apr '08  
GeneralRe: Embedding Multiple Images PinmemberBrian Rickard6:41 15 Apr '08  
GeneralI am getting the attachment as .Dat file PinmemberElavarasu2:54 13 Jun '07  
AnswerRe: I am getting the attachment as .Dat file Pinmemberjebarson0:10 16 Jun '07  
AnswerRe: I am getting the attachment as .Dat file PinmemberBrianB15:50 11 Jun '09  
QuestionRegards VB.NET and ASP.NET Pinmemberahmedaaki1:49 21 May '07  
AnswerRe: Regards VB.NET and ASP.NET Pinmemberjebarson2:47 21 May '07  
GeneralHai Tell About AJAX PinmemberSenthil S17:43 3 May '07  
AnswerRe: Hai Tell About AJAX Pinmemberjebarson20:36 6 May '07  
GeneralSuggestion: Example message should include the image Pinmembersimon.proctor0:45 12 Apr '07  
GeneralRe: Suggestion: Example message should include the image Pinmemberjebarson1:25 12 Apr '07  
GeneralRe: Suggestion: Example message should include the image Pinmembersimon.proctor1:29 12 Apr '07  
AnswerRe: Suggestion: Example message should include the image Pinmemberjebarson2:22 16 Apr '07  
GeneralRe: Suggestion: Example message should include the image Pinmembersimon.proctor23:15 17 Apr '07  
AnswerRe: Suggestion: Example message should include the image Pinmemberjebarson19:48 18 Apr '07  
GeneralRe: Suggestion: Example message should include the image Pinmembersimon.proctor0:04 19 Apr '07  
AnswerRe: Suggestion: Example message should include the image Pinmemberjebarson20:26 20 Apr '07  
GeneralRe: Suggestion: Example message should include the image Pinmemberbeebbh6:46 23 Apr '07  
GeneralRe: Suggestion: Example message should include the image PinmemberGlay6:24 6 May '07  
GeneralGetting Exception.. Pinmembercrazy_mads23:18 29 Mar '07  
GeneralRe: Getting Exception.. Pinmemberjebarson23:25 29 Mar '07  
GeneralRe: Getting Exception.. Pinmembercrazy_mads0:06 30 Mar '07  
GeneralRe: Getting Exception.. Pinmemberjebarson22:50 10 Apr '07  
GeneralI am coding in C#. Pinmembercrazy_mads21:14 29 Mar '07  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web03 | 2.5.120210.1 | Last Updated 6 Mar 2007
Article Copyright 2007 by jebarson
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid