Derinlemesine yazılım eğitimleri için kanalımı takip edebilirsiniz...

Asp.NET MVC – Mailden Birden Çok Dosya Gönderme

Web projelerinde mail gönderme işlemi oldukça önem arz etmektedir.”.NET” mimarisinin bizlere sunduğu yapılarla istediğimiz sunucudan istediğimiz formatta mail hazırlayıp gönderme işlemi gerçekleştirebiliyoruz.Lakin web sitemiz üzerinden mail gönderilirken bir veya birden fazla dosyayı gönderme mecburiyetinde olabiliriz.Şimdi gelin bu işlemi nasıl yapabiliriz beraber irdeleyelim.

Web üzerinden çoklu dosya seçilebilmesi için önceden ele almış olduğum Asp.NET MVC – Multiple File Upload başlılı yazıyı okumanızı tavsiye ediyorum.Bu yazıdaki yapıyı kullandığımızı varsayarak birden fazla seçilen dosyayı mail ile göndermenin nasıl yapıldığını inceleyeceğiz.

Mail gönderecek Action metodumuzu aşağıdaki gibi hazırlıyorum.

        public ActionResult DosyaYukle(IEnumerable<HttpPostedFileBase> SecilenDosyalar)
        {
            SmtpClient mailClient = new SmtpClient("smtp.gmail.com", 587);
            NetworkCredential cred = new NetworkCredential("mail adresiniz", "şifreniz");
            mailClient.Credentials = cred;
            MailMessage contact = new MailMessage();
            contact.From = new MailAddress("mail adresi");
            contact.Subject = "Dosya Yüklendi.";
            contact.IsBodyHtml = true;
            contact.Body = "Gönderilen Dosyalar";
            mailClient.EnableSsl = true;
            if (SecilenDosyalar.Count() > 0)
            {
                foreach (var Dosya in SecilenDosyalar)
                {
                    Attachment a = new Attachment(Dosya.InputStream, Dosya.FileName);
                    contact.Attachments.Add(a);
                }
            }
            contact.To.Add("gönderilecek mail adresi");
            mailClient.Send(contact);
        }

Yukarıdaki sınıf sayesinde seçilen dosyalarımız belirtilen mail adresine gönderilecektir.

İyi çalışmalar dilerim…

Bunlar da hoşunuza gidebilir...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*