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); } } }