This documentation is archived and is not being maintained.
MailMessage Class
.NET Framework 1.1
Provides properties and methods for constructing an e-mail message.
For a list of all members of this type, see MailMessage Members.
System.Object
System.Web.Mail.MailMessage
[Visual Basic] Public Class MailMessage [C#] public class MailMessage [C++] public __gc class MailMessage [JScript] public class MailMessage
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Example
[Visual Basic] <%-- This example shows how to send a mail message from a Web Forms page using the classes in the System.Web.Mail namespace. --%> <%@ IMPORT namespace="System.Web.Mail" %> <html> <script language=VB runat=server> Sub Page_Load() If Not IsPostback Then lblMsg1.Text="" txtTo.Text="john@contoso.com" txtFrom.Text="marsha@contoso.com" txtCc.Text="fred@contoso.com" txtBcc.Text="wilma@contoso.com" txtSubject.Text="Hello" txtBody.Text="This is a test message." txtAttach.Text="C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg," _ & "C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Winter.jpg" txtBodyEncoding.Text = Encoding.ASCII.EncodingName txtBodyFormat.Text="HTML" txtPriority.Text="Normal" txtUrlContentBase.Text="http://www.contoso.com/images" txtUrlContentLocation.Text="http://www.contoso.com/images" ' Name of relay mail server in your domain. txtMailServer.Text="smarthost"' End If End Sub Sub btnSubmit_Click(ByVal sender As Object, ByVal e As EventArgs) Dim sTo As String, sFrom As String, sSubject As String, sBody As String Dim sAttach As String, sCc As String, sBcc As String, sBodyEncoding As String Dim sBodyFormat As String, sMailServer As String, sPriority As String Dim sUrlContentBase As String, sUrlContentLocation As String Dim iLoop1 As Integer sTo = Trim(txtTo.Text) sFrom = Trim(txtFrom.Text) sSubject = Trim(txtSubject.Text) sBody = Trim(txtBody.Text) sAttach = Trim(txtAttach.Text) sCc = Trim(txtCc.Text) sBcc = Trim(txtBcc.Text) sBodyFormat = Trim(txtBodyFormat.Text) sBodyEncoding = Trim(txtBodyEncoding.Text) sPriority = Trim(txtPriority.Text) sUrlContentBase = Trim(txtUrlContentBase.Text) sUrlContentLocation = Trim(txtUrlContentLocation.Text) sMailServer = Trim(txtMailServer.Text) Dim MyMail As MailMessage = New MailMessage() MyMail.From = sFrom MyMail.To = sTo MyMail.Subject = sSubject MyMail.Body = sBody MyMail.Cc = sCc MyMail.Bcc = sBcc MyMail.UrlContentBase = sUrlContentBase MyMail.UrlContentLocation = sUrlContentLocation Select Case txtBodyEncoding.Text Case Encoding.UTF7.EncodingName : MyMail.BodyEncoding = Encoding.UTF7 Case Encoding.UTF8.EncodingName : MyMail.BodyEncoding = Encoding.UTF8 Case Else : MyMail.BodyEncoding = Encoding.ASCII End Select Select Case UCase(sBodyFormat) Case "HTML" : MyMail.BodyFormat = MailFormat.Html Case Else : MyMail.BodyFormat = MailFormat.Text End Select Select Case UCase(sPriority) Case "HIGH" : MyMail.Priority = MailPriority.High Case "LOW" : MyMail.Priority = MailPriority.Low Case Else : MyMail.Priority = MailPriority.Normal End Select ' Build an IList of mail attachments. If sAttach<>"" Then Dim delim As Char = "," Dim sSubstr As String For Each sSubstr in sAttach.Split(delim) Dim myAttachment As MailAttachment = New MailAttachment(sSubstr) myMail.Attachments.Add(myAttachment) Next End If SmtpMail.SmtpServer = sMailServer SmtpMail.Send(MyMail) lblMsg1.Text="VB Message sent to " & MyMail.To End Sub Sub btnClear_Click(ByVal sender As Object, ByVal e As EventArgs) lblMsg1.Text="" txtTo.Text="" txtFrom.Text="" txtSubject.Text="" txtBody.Text="" txtAttach.Text="" txtBcc.Text="" txtCc.Text="" txtBodyEncoding.Text="" txtBodyFormat.Text="" txtPriority.Text="" txtUrlContentBase.Text="" txtUrlContentLocation.Text="" txtMailServer.Text="" btnSubmit.Text="Submit" End Sub </script> <p><h4>Send a new mail message:<h4></p> <Form method="Post" action="MailForm.aspx" runat=server> <table width="350" bgcolor="#FFFF99"> <tr> <td Align="Right"><b>To:</b></td> <td><Asp:Textbox id="txtTo" runat=server/></td> </tr> <tr> <h4><td Align="Right"><b>From:</b></td></h4> <td><Asp:Textbox id="txtFrom" runat=server/></td> </tr> <tr> <td Align="Right"><b>Subject:</b></td> <td><Asp:Textbox id="txtSubject" runat=server/></td> </tr> <tr> <td Align="Right"><b>MessageBody:</b></td> <td><Asp:Textbox id="txtBody" runat=server/></td> </tr> <tr> <td Align="Right"><b>Attachments:</b></td> <td><Asp:Textbox id="txtAttach" runat=server/></td> </tr> <tr> <td Align="Right"><b>CC:</b></td> <td><Asp:Textbox id="txtBcc" runat=server/></td> </tr> <tr> <td Align="Right"><b>BCC:</b></td> <td><Asp:Textbox id="txtCc" runat=server/></td> </tr> <tr> <td Align="Right"><b>BodyEncoding:</b></td> <td><Asp:Textbox id="txtBodyEncoding" runat=server/></td> </tr> <tr> <td Align="Right"><b>BodyFormat:</b></td> <td><Asp:Textbox id="txtBodyFormat" runat=server/></td> </tr> <tr> <td Align="Right"><b>Priority:</b></td> <td><Asp:Textbox id="txtPriority" runat=server/></td> </tr> <tr> <td Align="Right"><b>URL Content Base:</b></td> <td><Asp:Textbox id="txtUrlContentBase" runat=server/></td> </tr> <tr> <td Align="Right"><b>URL Content Location:</b></td> <td><Asp:Textbox id="txtUrlContentLocation" runat=server/></td> </tr> <tr> <td Align="Right"><b>Mail Server:</b></td> <td><Asp:Textbox id="txtMailServer" runat=server/></td> </tr> </table><br> <asp:button id="btnSubmit" Text="Submit" OnClick="btnSubmit_Click" runat=server/> <asp:button id="btnClear" Text="Clear" OnClick="btnClear_Click" runat=server/> <p><asp:Label id="lblMsg1" runat=server/></p> </form> </html> [C#] <%-- This example shows how to send a mail message from a Web Forms page using the classes in the System.Web.Mail namespace. --%> <%@ IMPORT namespace="System.Web.Mail" %> <html> <script language=C# runat=server> void Page_Load() { if (!IsPostBack) { txtTo.Text="john@contoso.com"; txtFrom.Text="marsha@contoso.com"; txtCc.Text="fred@contoso.com"; txtBcc.Text="wilma@contoso.com"; txtSubject.Text="Hello"; txtBody.Text="This is a test message."; txtAttach.Text=@"C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg," + @"C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Winter.jpg"; txtBodyEncoding.Text = Encoding.ASCII.EncodingName; txtBodyFormat.Text="HTML"; txtPriority.Text="Normal"; txtUrlContentBase.Text="http://www.contoso.com/images"; txtUrlContentLocation.Text="http://www.contoso.com/images"; // Name of relay mail server in your domain. txtMailServer.Text="smarthost"; } } void btnSubmit_Click(Object sender, EventArgs e) { string sTo, sFrom, sSubject, sBody; string sAttach, sCc, sBcc, sBodyEncoding; string sBodyFormat, sMailServer, sPriority; string sUrlContentBase, sUrlContentLocation; int iLoop1; sTo = txtTo.Text.Trim(); sFrom = txtFrom.Text.Trim(); sSubject = txtSubject.Text.Trim(); sBody = txtBody.Text.Trim(); sAttach = txtAttach.Text.Trim(); sCc = txtCc.Text.Trim(); sBcc = txtBcc.Text.Trim(); sBodyFormat = txtBodyFormat.Text.Trim(); sBodyEncoding = txtBodyEncoding.Text.Trim(); sPriority = txtPriority.Text.Trim(); sUrlContentBase = txtUrlContentBase.Text.Trim(); sUrlContentLocation = txtUrlContentLocation.Text.Trim(); sMailServer = txtMailServer.Text.Trim(); MailMessage MyMail = new MailMessage(); MyMail.From = sFrom; MyMail.To = sTo; MyMail.Subject = sSubject; MyMail.Body = sBody; MyMail.Cc = sCc; MyMail.Bcc = sBcc; MyMail.UrlContentBase = sUrlContentBase; MyMail.UrlContentLocation = sUrlContentLocation; if (txtBodyEncoding.Text == Encoding.UTF7.EncodingName) MyMail.BodyEncoding = Encoding.UTF7; else if (txtBodyEncoding.Text == Encoding.UTF8.EncodingName) MyMail.BodyEncoding = Encoding.UTF8; else MyMail.BodyEncoding = Encoding.ASCII; switch (sBodyFormat.ToUpper()) { case "HTML": MyMail.BodyFormat = MailFormat.Html; break; default: MyMail.BodyFormat = MailFormat.Text; break; } switch (sPriority.ToUpper()) { case "HIGH": MyMail.Priority = MailPriority.High; break; case "LOW": MyMail.Priority = MailPriority.Low; break; default: MyMail.Priority = MailPriority.Normal; break; } // Build an IList of mail attachments. if (sAttach != "") { char[] delim = new char[] {','}; foreach (string sSubstr in sAttach.Split(delim)) { MailAttachment MyAttachment = new MailAttachment(sSubstr); MyMail.Attachments.Add(MyAttachment); } } SmtpMail.SmtpServer = sMailServer; SmtpMail.Send(MyMail); lblMsg1.Text="C# Message sent to " + MyMail.To; } void btnClear_Click(Object sender, EventArgs e) { lblMsg1.Text=""; txtTo.Text=""; txtFrom.Text=""; txtSubject.Text=""; txtBody.Text=""; txtAttach.Text=""; txtBcc.Text=""; txtCc.Text=""; txtBodyEncoding.Text=""; txtBodyFormat.Text=""; txtPriority.Text=""; txtUrlContentBase.Text=""; txtUrlContentLocation.Text=""; txtMailServer.Text=""; btnSubmit.Text="Submit"; } </script> <p><h4>Send a new mail message:<h4></p> <Form method="Post" action="MailForm.aspx" runat=server> <table width="350" bgcolor="#FFFF99"> <tr> <td Align="Right"><b>To:</b></td> <td><Asp:Textbox id="txtTo" runat=server/></td> </tr> <tr> <h4><td Align="Right"><b>From:</b></td></h4> <td><Asp:Textbox id="txtFrom" runat=server/></td> </tr> <tr> <td Align="Right"><b>Subject:</b></td> <td><Asp:Textbox id="txtSubject" runat=server/></td> </tr> <tr> <td Align="Right"><b>MessageBody:</b></td> <td><Asp:Textbox id="txtBody" runat=server/></td> </tr> <tr> <td Align="Right"><b>Attachments:</b></td> <td><Asp:Textbox id="txtAttach" runat=server/></td> </tr> <tr> <td Align="Right"><b>CC:</b></td> <td><Asp:Textbox id="txtBcc" runat=server/></td> </tr> <tr> <td Align="Right"><b>BCC:</b></td> <td><Asp:Textbox id="txtCc" runat=server/></td> </tr> <tr> <td Align="Right"><b>BodyEncoding:</b></td> <td><Asp:Textbox id="txtBodyEncoding" runat=server/></td> </tr> <tr> <td Align="Right"><b>BodyFormat:</b></td> <td><Asp:Textbox id="txtBodyFormat" runat=server/></td> </tr> <tr> <td Align="Right"><b>Priority:</b></td> <td><Asp:Textbox id="txtPriority" runat=server/></td> </tr> <tr> <td Align="Right"><b>URL Content Base:</b></td> <td><Asp:Textbox id="txtUrlContentBase" runat=server/></td> </tr> <tr> <td Align="Right"><b>URL Content Location:</b></td> <td><Asp:Textbox id="txtUrlContentLocation" runat=server/></td> </tr> <tr> <td Align="Right"><b>Mail Server:</b></td> <td><Asp:Textbox id="txtMailServer" runat=server/></td> </tr> </table><br> <asp:button id="btnSubmit" Text="Submit" OnClick="btnSubmit_Click" runat=server/> <asp:button id="btnClear" Text="Clear" OnClick="btnClear_Click" runat=server/> <p><asp:Label id="lblMsg1" runat=server/></p> </form> </html>
[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Namespace: System.Web.Mail
Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family
Assembly: System.Web (in System.Web.dll)
See Also
Show: