public void Mail(MailCreateDto mailCreateDto, string body) { MailMessage msg = new MailMessage(); msg.Subject = mailCreateDto.Subject; msg.From = new MailAddress("*****@*****.**", "uğur mamak");//burası hep böyle kalmalı //msg.To.Add(new MailAddress("*****@*****.**", "uğur mamak"));//mesajın gittiği adres msg.To.Add(new MailAddress(mailCreateDto.Mail, mailCreateDto.Name));//mesajın gittiği adres msg.Body = body; msg.IsBodyHtml = true; msg.Priority = MailPriority.High; if (mailCreateDto.File != null) { Attachment data = new Attachment(mailCreateDto.File.OpenReadStream(), mailCreateDto.File.FileName); msg.Attachments.Add(data); } SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587); smtp.Credentials = CredentialCache.DefaultNetworkCredentials; NetworkCredential AccountInfo = new NetworkCredential("*****@*****.**", "134ugur2163");//alan kişi smtp.UseDefaultCredentials = false; smtp.Credentials = AccountInfo; smtp.EnableSsl = true; smtp.DeliveryMethod = SmtpDeliveryMethod.Network; smtp.Send(msg); }
public async Task <IActionResult> SendMail([FromForm] MailCreateDto mailCreateDto) { try { string body = "<b>Ad Soyad:</b>" + mailCreateDto.Name + "<br/>" + "<b>Mail adresim:</b>" + mailCreateDto.Mail + "<br/>" + mailCreateDto.Content; mailCreateDto.Mail = "*****@*****.**"; mailCreateDto.Name = "uğur mamak"; SendMail send = new SendMail(); send.Mail(mailCreateDto, body); } catch (Exception ex) { return(BadRequest("Mesaj iletirken hata oluştu.")); throw ex; } return(Ok("Mesajınız iletildi")); }
public async Task <string> ValidateCredentials(MailCreateDto mailCreateDto) { try { using (var imapClient = new ImapClient()) { imapClient.CheckCertificateRevocation = false; await imapClient.ConnectAsync(mailCreateDto.Server, ImapPort, true); await imapClient.AuthenticateAsync(mailCreateDto.Name, mailCreateDto.Password); } } catch (Exception ex) { return(ex.Message); } return(default);
private async void submitButton_Click(object sender, EventArgs e) { var mailCreateDto = new MailCreateDto { Server = serverTextBox.Text, Name = nameTextBox.Text, Password = passwordTextBox.Text }; loadingLabel.Visible = true; panel1.Visible = false; var addMailError = await AddMail(mailCreateDto); loadingLabel.Visible = false; panel1.Visible = true; if (addMailError != default) { MessageBox.Show(addMailError); return; } Hide(); }
private async Task <string> AddMail(MailCreateDto mailCreateDto) { var validationError = await _imapService.ValidateCredentials(mailCreateDto); if (validationError != default) { return(validationError); } if (_userDto.Mails.FirstOrDefault(mail => mail.Name == mailCreateDto.Name) != null) { return($"{mailCreateDto.Name} is already added to the list"); } var result = await _mailService.AddMail(_userDto.Username, mailCreateDto); if (!result) { return("Failed to add mail"); } await UpdateInterface(); return(default);
[HttpPost("register")] //kullanıcı bilgileri ve resim bilgisi gelmektedir. // public async Task<IActionResult> Register([FromForm] IFormFile image, [FromForm] UserForRegisterDto userForRegisterDto) public async Task <IActionResult> Register([FromForm] UserForRegisterDto userForRegisterDto) { var userExists = _authService.UserExists(userForRegisterDto.Email);//Kullanıcının girdiği email bilgisinin Db'de olup olamdığını kontrol ettik. //userExists'in geridönüş değeri SuccessResult'tır. Buradan işlemin başarılı olup olmadığını kontrol edebiliriz. if (!userExists.Success) { return(BadRequest(userExists.Message)); } string Id = Guid.NewGuid().ToString(); //resimlere guid Id şeklinde isim ataması yaptım. var resimler = Path.Combine(_environment.WebRootPath, "userImage"); //dizin bilgisi string imageName = $"{Id}.jpg"; //Db ye kaydedilecek olan resimlerin ismi if (userForRegisterDto.Image == null) { //return BadRequest("Resim Bilgisi Boş"); imageName = "profileImage.jpg"; } string password = ""; if (userForRegisterDto.processType == "SystemAdmin") { RandomPassword pass = new RandomPassword(); password = pass.password(); userForRegisterDto.Password = password; } var registerResult = _authService.Register(userForRegisterDto, userForRegisterDto.Password, imageName); var result = _authService.CreateAccessToken(registerResult.Data);//registerResult'ın döndüğü Data(User) bilgisini token üretmek için parametre olarak verdim. if (userForRegisterDto.Image != null) { if (userForRegisterDto.Image.Length > 0) { using (var fileStream = new FileStream(Path.Combine(resimler, imageName), FileMode.Create)) { await userForRegisterDto.Image.CopyToAsync(fileStream); } } } if (registerResult.Success) { if (password != "") { string body = "Merhaba " + userForRegisterDto.FirstName + " " + userForRegisterDto.LastName + "<br/>" + " Başvurunuz dikkate alınarak size hesap oluşturulmuştur." + " Sisteme giriş yapmak için <br/> bize iletmiş olduğunuz mail adresini:" + "<b>" + userForRegisterDto.Email + "</b>" + "<br/> ve şifre olarak: " + "<b>" + password + "<b/><br/>" + "kullanabilirsiniz." + "<br/>Sisteme giriş yaptıktan sonra profil resminizi ve şifrenizi güncelleyebilirsiniz."; MailCreateDto gonder = new MailCreateDto { Content = body, Mail = userForRegisterDto.Email, Name = userForRegisterDto.FirstName + " " + userForRegisterDto.LastName, Subject = "Adminlik ve Opetatör başvurusu" }; SendMail send = new SendMail(); send.Mail(gonder, body); } return(Ok(result.Data)); } return(BadRequest(result.Message)); }