Forum

c# winform da HTML ...
 
Bildirimler
Hepsini Temizle

[Çözüldü] c# winform da HTML şablonu ile Smtp mail Gönderme

5 Yazılar
3 Üyeler
0 Reactions
2,570 Görüntüleme
Mehmet
(@mehmetikiz)
Gönderiler: 442
Prominent Member
Konu başlatıcı
 

merhaba;

c# winform uygulaması kullanarak mail göndermeye çalıştığımda kırmızı satırda System.ArgumentNullException: 'Değer null olamaz.' hatası alıyorum. bu satırdaki new System.Web.UI.Control() yerine this yazdığımda(internette örnekleri var direk şu hatayı veriyor. Severity Code Description Project File Line Suppression State Error CS1503 Argument 3: cannot convert from 'WindowsFormsApp1.Form1' to 'System.Web.UI.Control' 

Yardımlarınızı bekliyorum iyi çalışmalar.

string Tarih = "10.10.2017";
string UyeAdi = "deneme üyesi";
string MusteriMail = "[email protected]";

MailDefinition mailTarifi = new MailDefinition();
mailTarifi.BodyFileName = "http://www.denemeadresi.com/mailsablon/reklam.html";
mailTarifi.From = "[email protected]";

ListDictionary degistirmeListesi = new ListDictionary();
degistirmeListesi.Add("<%UyeAdi%>", UyeAdi);
degistirmeListesi.Add("<%ReklamTarih %>", Tarih);

MailMessage Email = mailTarifi.CreateMailMessage(MusteriMail, degistirmeListesi, new System.Web.UI.Control());
Email.Subject = "Deneme.com Bilgilendirme";
Email.IsBodyHtml = true;

System.Net.NetworkCredential info = new System.Net.NetworkCredential("[email protected]", "password");
SmtpClient mailClient = new System.Net.Mail.SmtpClient();
mailClient.Host = "mail.deneme.com";
mailClient.UseDefaultCredentials = false;
mailClient.Credentials = info;
mailClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
mailClient.Port = 587;
mailClient.Send(Email);

 
Gönderildi : 16/07/2017 00:38

(@cemkilic)
Gönderiler: 397
Reputable Member
 

mailmessage mail=new mailmessage();
mail.from=new mailadress('mailadresi');
mail.to.add(textbox1.tex);
mail.subject(textbox2.text);
mail.body(textbox3.text);
smtpclient smtp=new smtpclient();
mail.credntial=new networkcredentıal("mailadresi","şifre");
smtp.port=587;
smtp.host="smtp.gmail.com";
smtp.send(mail)

 

Not:IIS de smtp servısını kktıf ettıkten sonra maıl gönderebılırsınız ıyı calısmalar

 
Gönderildi : 16/07/2017 02:08

Mehmet
(@mehmetikiz)
Gönderiler: 442
Prominent Member
Konu başlatıcı
 

cem bey siz klasik bir yöntem yazmışsınız. benim örneğime hiç bakmamışsınız. ben html formatında bir şablon üzerinden mail göndermeye uğraşıyorum. ve aldığım hatayı sizinle paylaştım. bu örneği internetten buldum ama bende neden hata veriyor anlamadım...

 
Gönderildi : 16/07/2017 02:35

(@eravse)
Gönderiler: 1753
Üye
 

Mehmet selam,

 

windows formda dırek olarak mail Defination object url okuyamaz senın aldıgın hata base path yok hatasıdır deploy yaparken dıkkatlı bakarsan goreceksın bunun cozumu su an ıcın su sekılde

 

            mailTarifi.BodyFileName = AppDomain.CurrentDomain.BaseDirectory+"/reklam.html";

 

kısmını bu sekılde duzeltırsen sorunsuz okuyacaktır  denersen sevınırım  ( Bin dizini icine Reklam.html  olusturman gerekir )

 

saygılar

 

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

 
Gönderildi : 16/07/2017 03:52

Mehmet
(@mehmetikiz)
Gönderiler: 442
Prominent Member
Konu başlatıcı
 

Erdem Hocam, 

ilginize çok teşekkür ederim, dediğinizi yaptım ve sorunsuz çalışıyor. Çok teşekkürler iyi çalışmalar...

 
Gönderildi : 16/07/2017 05:15

Paylaş: