Ejemplo n.º 1
0
        public void SendingEmail(ReceiverEmail receiver, ContentEmail content)
        {
            MailMessage message = null;

            try
            {
                message = new MailMessage();

                message.IsBodyHtml = content.IsHTML;
                message.From       = new MailAddress(senderEmail.AccountEmail, senderEmail.AccountName);
                message.To.Add(new MailAddress(receiver.AccountEmail, receiver.AccountName));
                message.Subject = content.Subject;
                message.Body    = content.Message;

                using (var client = new SmtpClient(senderEmail.SMTP, senderEmail.Port))
                {
                    client.Credentials =
                        new NetworkCredential(senderEmail.AccountEmail, senderEmail.Password);

                    client.EnableSsl = content.IsSSL;
                    client.Send(message);
                }
            }
            catch (Exception e)
            {
                Exceptions.Add(e);
            }
            finally
            {
                message = null;
            }
        }
Ejemplo n.º 2
0
        private async void OnShare()
        {
            if (!(ReceiverEmail.Contains("@") && ReceiverEmail.Contains(".")))
            {
                EmailError = "Please enter valid email!";
                return;
            }


            var      startDate = DateTime.UtcNow.ToLocalTime();
            DateTime endDate;

            try
            {
                endDate = DateTime.Parse(GetExpireDate());
            }
            catch (FormatException)
            {
                ExpireDateResult = "Date format is invalid";
                return;
            }

            if (startDate >= endDate)
            {
                ExpireDateResult = "Start date is later than expire date!";
                return;
            }
            IsBusy = true;
            var loginDataToShare = await DataStore.GetItemAsync(ItemId);

            var password = EncService.Decrypt(SecureStorageHelper.GetUserKey().Result,
                                              loginDataToShare.Password);
            LoginData newLoginData = new LoginData()
            {
                Name     = loginDataToShare.Name + " From " + SecureStorageHelper.GetUserEmail(),
                Login    = loginDataToShare.Login,
                Password = EncService.Encrypt(App.AppSettings.SecretEncryptionKey, password),
                Website  = loginDataToShare.Website,
                Email    = loginDataToShare.Email ?? "Not added"
            };
            var model = new ShareLoginModel
            {
                LoginData     = newLoginData,
                ReceiverEmail = ReceiverEmail,
                StartDate     = startDate,
                EndDate       = endDate
            };
            var apiResponse = await _apiService.HandleLoginShare(model);

            IsBusy = false;
            if (!apiResponse.Success)
            {
                MessagingCenter.Send(this, "ShareNotify", apiResponse.Messages.First());
                return;
            }
            MessagingCenter.Send(this, "ShareNotify", apiResponse.Messages.First());
            await App.Current.MainPage.Navigation.PopModalAsync();
        }
Ejemplo n.º 3
0
        public void SendEmailToUser(string message, string email, string name)
        {
            var receiver = new ReceiverEmail(name, email);
            var content  = new ContentEmail("Conta Sirius Criada Com Sucesso!"
                                            , message
                                            , false
                                            , true);

            SendingEmail(receiver, content);
        }
Ejemplo n.º 4
0
        public void SendEmailToUser(UserEntity userEntity, string email, string name)
        {
            var receiver = new ReceiverEmail(name, email);
            var content  = new ContentEmail("Conta Sirius Criada Com Sucesso!"
                                            , $"Sua conta Sirius foi criada.\n\nUsuário: {userEntity.Username}\nSenha: {userEntity.Password}."
                                            , false
                                            , true);

            SendingEmail(receiver, content);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="EmailTo">收件人</param>
        /// <param name="CCEmail">抄送人</param>
        /// <param name="Subject">主题</param>
        /// <param name="Body">内容</param>
        /// <param name="FilePath">附件</param>
        /// <returns></returns>
        public static string Send(List <string> EmailTo, List <string> CCEmail, string Subject, string Body, List <string> FilePath)
        {
            string     result = "";
            SmtpClient mail   = new SmtpClient();

            //发送方式
            mail.DeliveryMethod = SmtpDeliveryMethod.Network;
            //smtp服务器
            mail.Host = Host;
            //用户名凭证
            mail.Credentials = new System.Net.NetworkCredential(UserName, EmailPWD);
            //邮件信息
            MailMessage message = new MailMessage();

            try
            {
                //收件人
                foreach (string ReceiverEmail in EmailTo)
                {
                    if (ReceiverEmail.ToString().Trim() != "")
                    {
                        if (!message.To.Contains(new MailAddress(ReceiverEmail)))
                        {
                            message.To.Add(ReceiverEmail.ToString());
                        }
                    }
                }
            }
            catch { }

            try
            {
                //抄送人
                foreach (string CCEmailItem in CCEmail)
                {
                    if (CCEmailItem.ToString().Trim() != "")
                    {
                        if (!message.CC.Contains(new MailAddress(CCEmailItem)))
                        {
                            message.CC.Add(CCEmailItem.ToString());
                        }
                    }
                }
            }
            catch { }
            //添加抄送人

            //发件人
            message.From = new MailAddress(Email);

            //主题
            message.Subject = Subject;
            //内容
            message.Body = Body;
            //正文编码
            message.BodyEncoding = System.Text.Encoding.UTF8;
            //设置为HTML格式
            message.IsBodyHtml = true;
            //优先级
            message.Priority = MailPriority.Normal;
            try
            {
                foreach (string FileNamePath in FilePath)
                {
                    message.Attachments.Add(new Attachment(FileNamePath));
                }
            }
            catch { }
            try
            {
                mail.Send(message);
                result = "发送成功";
            }
            catch (Exception e)
            {
                result = e.Message.ToString();
            }
            return(result);
        }
Ejemplo n.º 6
0
        //public static readonly string MailToConfig = System.Configuration.ConfigurationManager.AppSettings["MailToConfig"].ToString().Trim();
        //public static readonly string CCEmailConfig = System.Configuration.ConfigurationManager.AppSettings["CCEmailConfig"].ToString().Trim();
        /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="EmailTo">收件人</param>
        /// <param name="CCEmail">抄送人</param>
        /// <param name="Subject">主题</param>
        /// <param name="Body">内容</param>
        /// <param name="FilePath">附件</param>
        /// <returns></returns>
        public static string Send(string Subject, string Body, List <string> FilePath, string MailToConfig, string CCEmailConfig)
        {
            List <string> EmailToList = new List <string>();
            List <string> CCEmailList = new List <string>();
            var           MailTos     = MailToConfig.Split('|');
            var           CCEmails    = CCEmailConfig.Split('|');

            for (int i = 0; i < MailTos.Length; i++)
            {
                EmailToList.Add(MailTos[i]);
            }
            for (int i = 0; i < CCEmails.Length; i++)
            {
                CCEmailList.Add(CCEmails[i]);
            }
            string     result = "";
            SmtpClient mail   = new SmtpClient();

            //发送方式
            mail.DeliveryMethod = SmtpDeliveryMethod.Network;
            //smtp服务器
            mail.Host = Host;
            mail.Port = 587;
            mail.UseDefaultCredentials = false;
            mail.EnableSsl             = true;
            //用户名凭证
            mail.Credentials = new System.Net.NetworkCredential(UserName, EmailPWD);
            //邮件信息
            MailMessage message = new MailMessage();

            try
            {
                //收件人
                foreach (string ReceiverEmail in EmailToList)
                {
                    if (ReceiverEmail.ToString().Trim() != "")
                    {
                        if (!message.To.Contains(new MailAddress(ReceiverEmail)))
                        {
                            message.To.Add(ReceiverEmail.ToString());
                        }
                    }
                }
            }
            catch { }

            try
            {
                //抄送人
                foreach (string CCEmailItem in CCEmailList)
                {
                    if (CCEmailItem.ToString().Trim() != "")
                    {
                        if (!message.CC.Contains(new MailAddress(CCEmailItem)))
                        {
                            message.CC.Add(CCEmailItem.ToString());
                        }
                    }
                }
            }
            catch { }
            //添加抄送人

            //发件人
            message.From = new MailAddress(Email);

            //主题
            message.Subject = Subject;
            //内容
            message.Body = Body + "<br/>===============================<br/>此邮件为系统自动发送,请不要回复。<br/>";
            //正文编码
            message.BodyEncoding = System.Text.Encoding.UTF8;
            //设置为HTML格式
            message.IsBodyHtml = true;
            //优先级
            message.Priority = MailPriority.Normal;

            try
            {
                foreach (string FileNamePath in FilePath)
                {
                    message.Attachments.Add(new Attachment(FileNamePath));
                }
            }
            catch
            {
            }

            try
            {
                mail.Send(message);
                message.Attachments.Dispose();
                return(result);
            }
            catch (Exception e)
            {
                message.Attachments.Dispose();
                result = e.ToString();
            }
            return(result);
        }