Arşiv

Posts Tagged ‘C#’

C# – Gmail ile mail göndermek

Ekim 1, 2015 Yorum bırakın

public static void SendMail(string pEmail, string pSubject, string pMessage)
{
MailMessage mail = new MailMessage(“mailiniz@gmail.com”, pEmail);
SmtpClient client = new SmtpClient();
client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(“mailiniz@gmail.com”, “sifreniz”);
client.EnableSsl = true;
client.Host = “smtp.gmail.com”;
mail.Subject = pSubject;
mail.Body = pMessage;
client.Send(mail);
}

Yukarıdaki fonksiyon mail göndermek için yeterlidir. Ancak burada belirtildiği üzere uygulamanızın gmail hesabını kullanarak mail atabilmesi için buraya tıklayarak daha az güvenli uygulamaların(less secure apps) gmail hesabını kullanmasına izin vermek gerekiyor. Bu durumda dahi Google birşeylerden kıllanırsa hesaba erişimi kapatabilir.

Güncelleme: 
Bu mail gönderme kendi bilgisayarımdan çalışsa da server’a gönderdiğimde ” the smtp server requires a secure connection or the client was not authenticated” hatasını aldı. Çünkü server Amerika’daydı ve Google şüpheli olarak görüyordu. Ben server’a erişemediğim için sorunu çözemedim fakat sorunun çözümü olarak kodun çalıştığı servera bağlanarak buradan hesaba giriş yapmak gösteriliyor.

Kategoriler:SeeSharp, Yazılım Etiketler:, ,

C# yield

Kasım 28, 2013 Yorum bırakın

Ekşi’den yield kullanımını en güzel özetleyen örnek ;

ienumerable ahsenyokmusunyield()
{
yield return “yield ile”;
yield return “birden fazla”;
yield return “değer”;
yield return “döndürülebilir”;
}

IEnumarable ile bir fonksiyonda birden fazla sonuç döndürmeyi sağlar.

Kaynak

Kategoriler:SeeSharp, Yazılım Etiketler:,

Linq Hakkında 10 Mit

Mart 29, 2013 Yorum bırakın

Linq hakkında çok güzel açıklamalar bulunan bir makale, buradan bakılabilir. Ben çok beğendim.

Kategoriler:SeeSharp, Yazılım Etiketler:, ,

İbretlik Dinamik LINQ örneği

Mart 29, 2013 Yorum bırakın

Başka hiçbir açıklamaya gerek yok.

Dinamik LinQ anlamak için başka bir şeye gerek yok. C# için de aynı şekildedir diye ümit ediyorum. Henüz denemedim.

Edit : Buradaki dinamik Linq ifadelerini çalıştırabilmek için kaynak kısmındaki kütüphaneyi indirmek gerekiyor. Bu yetenek Linq’ya doğuştan gelmiyor ne yazıkki.

Kaynak

Kategoriler:SeeSharp, Yazılım Etiketler:, , ,

Null Coalescing Operator (??)

Mart 25, 2013 Yorum bırakın

FormsAuth = formsAuth ?? new FormsAuthenticationWrapper();

Şeklinde kullanımı olan ?? operatörü aşağıdaki derin manalara gelir :

FormsAuth = formsAuth != null ? formsAuth : new FormsAuthenticationWrapper();

veya

if(formsAuth != null)
FormsAuth = formsAuth;
else
FormsAuth = new FormsAuthenticationWrapper();

Ayrıca aşağıdaki şekilde de kullanımı vardır. Bu kullanımda sağdaki değerlerden null olmayanı al manasındadır.

string Answer = Answer1 ?? Answer2 ?? Answer3 ?? Answer4;

Kaynak

Kategoriler:SeeSharp, Yazılım Etiketler:, ,

C# IIS Asenkron Web Servis Çağırma

Aralık 14, 2012 Yorum bırakın

Webservis çağırıldığında programın bekleme yapmadan geçmesi ve arka planda web servisin çalışmaya devam etmesi için asenkron web servisi çağırıp devam ediyor olabiliriz.Asenkron web servis bir c# web projesinde “ornekServisAsync ” gibi bir isime sahip oluyor ve bunu bizim yazmamız gerekmiyor. Bir web servis yazdığımızda bunu hem senkron hem de asenkron çağırıyor olabiliriz.

Fakat IIS üzerinde bir timeout süresi söz konusu ise bu servisi timeout almaktan kurtarmaz.

Kategoriler:SeeSharp, Yazılım Etiketler:, ,

V for Volatile

Kasım 16, 2011 Yorum bırakın

“The volatile modifier is usually used for a field that is accessed by multiple threads without using the lock statement to serialize access. Using the volatile modifier ensures that one thread retrieves the most up-to-date value written by another thread.”

volatile anahtar kelimesi multi-thread ortamlarda birden fazla thread tarafından erişilen nesneler için kulanılır. Thread’lerin nesnenin en güncel halini aldığından emin olmayı sağlar.

Kaynak

Kategoriler:SeeSharp, Yazılım Etiketler:, ,

C# Dosya Yolundan Dosya Adı Bulmaca

Kasım 1, 2011 1 yorum

Uzun yıllar dosya yolu parse ettikten sonra gördüm ki ;

string dosyaAdi = Path.GetFileName(dosyaYolu);

hem seviniyor hem de üzülüyorum. System.IO ‘ya selam olsun.

Kategoriler:SeeSharp, Yazılım Etiketler:, , ,

C# “internal” anahtar sözcüğü

Ağustos 5, 2011 10 yorum

Bir nesnenin sadece içinde tanımlandığı kod dosyası içerisinde assembly içerisinde kullanılabileceğini belirtir.

http://msdn.microsoft.com/en-us/library/7c5ka91b%28v=vs.80%29.aspx

Kategoriler:SeeSharp, Yazılım Etiketler:,

C# ‘ta Dosya Adı Değiştirme Yok

Temmuz 15, 2011 Yorum bırakın

Fakat çare çok.

File.Move(eskiAdi,yeniAdi);

Fonksiyonu ile çözülebilir. Eğer eskiAdi parametresinde belirttiğiniz dosya adresi ile yeniAdi parametresinde belirttiğiniz dosya adresi fiziksel olarak aynı diski gösteriyorsa isim değiştirme, göstermiyorsa dosya taşıma işlemi yapılacaktır.

Kategoriler:SeeSharp, Yazılım Etiketler:,