Taylohtio/GeneralApi/GeneralApi.Core/Services/Impl/EmailService.cs

51 lines
1.6 KiB
C#

using System;
using System.Net.Mail;
using GeneralApi.Core.Services;
using Taloyhtio.GeneralApi.Common;
namespace Taloyhtio.GeneralApi.Core.Services.Impl
{
public class EmailService : IEmailService
{
private ILogger logger;
// private string host;
// private int port;
private string from;
// private string login;
// private string pwd;
public EmailService(ISettingsProvider settingsProvider, ILogger logger)
{
// this.host = settingsProvider.Get<string>(SettingsKeys.KEY_HOST);
// this.port = settingsProvider.Get<int>(SettingsKeys.KEY_PORT);
this.from = settingsProvider.Get<string>(Common.Constants.SettingsKeys.KEY_EMAIL_FROM);
// this.login = settingsProvider.Get<string>(SettingsKeys.KEY_LOGIN);
// this.pwd = settingsProvider.Get<string>(SettingsKeys.KEY_PWD);
this.logger = logger;
}
public void Send(string to, string subj, string body)
{
if (string.IsNullOrEmpty(to))
{
throw new ArgumentNullException("to");
}
var msg = new MailMessage(this.from, to, subj, body);
var smtpClient = new SmtpClient(/*this.host, this.port*/);
//smtpClient.Credentials = new NetworkCredential(this.login, this.pwd);
try
{
smtpClient.Send(msg);
}
catch (Exception x)
{
this.logger.LogError("Error occured during email sending:\n{0}\n{1}",
x.Message, x.StackTrace);
}
}
}
}