3c1f479b9d
Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
109 lines
3.1 KiB
C#
109 lines
3.1 KiB
C#
//
|
|
// System.Web.Mail.SmtpMail.cs
|
|
//
|
|
// Author:
|
|
// Lawrence Pit (loz@cable.a2000.nl)
|
|
// Per Arneng (pt99par@student.bth.se) (SmtpMail.Send)
|
|
//
|
|
// Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com)
|
|
//
|
|
// Permission is hereby granted, free of charge, to any person obtaining
|
|
// a copy of this software and associated documentation files (the
|
|
// "Software"), to deal in the Software without restriction, including
|
|
// without limitation the rights to use, copy, modify, merge, publish,
|
|
// distribute, sublicense, and/or sell copies of the Software, and to
|
|
// permit persons to whom the Software is furnished to do so, subject to
|
|
// the following conditions:
|
|
//
|
|
// The above copyright notice and this permission notice shall be
|
|
// included in all copies or substantial portions of the Software.
|
|
//
|
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
//
|
|
|
|
using System.Net;
|
|
using System.Net.Sockets;
|
|
using System.Text;
|
|
using System.IO;
|
|
using System.Reflection;
|
|
using System.Security.Permissions;
|
|
|
|
namespace System.Web.Mail
|
|
{
|
|
// CAS
|
|
[Obsolete ("The recommended alternative is System.Net.Mail.SmtpClient. http://go.microsoft.com/fwlink/?linkid=14202")]
|
|
public class SmtpMail
|
|
{
|
|
static string smtpServer = "localhost";
|
|
|
|
// Constructor
|
|
SmtpMail ()
|
|
{
|
|
/* empty */
|
|
}
|
|
|
|
// Properties
|
|
public static string SmtpServer {
|
|
get { return smtpServer; }
|
|
set { smtpServer = value; }
|
|
}
|
|
|
|
// Medium (not Minimal) here
|
|
// http://msdn.microsoft.com/library/en-us/dnpag2/html/paght000017.asp
|
|
[AspNetHostingPermission (SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Medium)]
|
|
public static void Send (MailMessage message)
|
|
{
|
|
|
|
try {
|
|
|
|
// wrap the MailMessage in a MailMessage wrapper for easier
|
|
// access to properties and to add some functionality
|
|
MailMessageWrapper messageWrapper = new MailMessageWrapper( message );
|
|
|
|
SmtpClient smtp = new SmtpClient (smtpServer);
|
|
|
|
smtp.Send (messageWrapper);
|
|
|
|
smtp.Close ();
|
|
|
|
} catch (SmtpException ex) {
|
|
// LAMESPEC:
|
|
// .NET sdk throws HttpException
|
|
// for some reason so to be compatible
|
|
// we have to do it to :(
|
|
throw new HttpException (ex.Message, ex);
|
|
|
|
} catch (IOException ex) {
|
|
|
|
throw new HttpException (ex.Message, ex);
|
|
|
|
} catch (FormatException ex) {
|
|
|
|
throw new HttpException (ex.Message, ex);
|
|
|
|
} catch (SocketException ex) {
|
|
|
|
throw new HttpException (ex.Message, ex);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
public static void Send (string from, string to, string subject, string messageText)
|
|
{
|
|
MailMessage message = new MailMessage ();
|
|
message.From = from;
|
|
message.To = to;
|
|
message.Subject = subject;
|
|
message.Body = messageText;
|
|
Send (message);
|
|
}
|
|
}
|
|
}
|