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(SettingsKeys.KEY_HOST); // this.port = settingsProvider.Get(SettingsKeys.KEY_PORT); this.from = settingsProvider.Get(Common.Constants.SettingsKeys.KEY_EMAIL_FROM); // this.login = settingsProvider.Get(SettingsKeys.KEY_LOGIN); // this.pwd = settingsProvider.Get(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); } } } }