You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.6 KiB

using Apewer;
using System;
using System.Collections.Generic;
using System.Net.Mail;
using System.Text;
namespace Apewer.Network
{
internal class MailMethods
{
public static MailRecord Send(MailClient client, MailMessage message)
{
var record = new MailRecord();
record.Action = "Send";
record.Client = Json.From(client == null ? new MailClient() : client).ToString();
record.Message = (message == null ? new MailMessage() : message).ToJson().ToString();
var smtp = null as System.Net.Mail.SmtpClient;
var mail = null as System.Net.Mail.MailMessage;
try
{
smtp = client.ToInstance();
mail = message.ToInstance();
smtp.Send(mail);
record.Status = "Ok";
}
catch (Exception ex)
{
record.Status = "Exception";
record.Exception = ex;
record.Error = ex.ToString();
}
if (smtp != null)
{
#if !NET20
smtp.Dispose();
#endif
}
if (mail != null) mail.Dispose();
return record;
}
public static MailRecord Send(MailClient client, string sender, string receiver, string content, string title)
{
var message = new MailMessage();
message.Sender = new MailAddress(sender);
message.Receiver.Add(new MailAddress(receiver));
message.Content = content;
message.Title = title;
return Send(client, message);
}
}
}