CSharp Başlangıç Soruları (Programlama Mantığı 1.1)

Programlama ya Giriş Örnek Sorular:

1-      1 ile 100 arasındaki tek sayıları listeleyen bir program yazınız. (for)

2-      1 ile 100 arasındaki çift sayıları listeleyen bir program yazınız. (for)

3-      1 ile 100 arasındaki asal sayıları listeleyen bir program yazınız. (for)

4-      1 ile 100 arasındaki tek sayıları listeleyen bir program yazınız. (while)

5-      1 ile 100 arasındaki çift sayıları listeleyen . . . → Read More: CSharp Başlangıç Soruları (Programlama Mantığı 1.1)

PLINQO – Professional LINQ to Objects

PLINQO Codesmith tarafından geliştirilmiş bir codesmith template idir. Standart Visual Studio 2008 Linq to SqlClasses template i tarafından çıkartılan class ları özelleştirmek sıkıntılı olduğundan, daha özelleştirilebilir bir Linq to Sql veri katmanı oluşturmak için çıkmıştır.

Codesmith in Visual Studio ile entegre çalıştığını da düşünürsek, bu template ile birlikte çok kolay bir şekilde Dbml ve ona bağlı classları . . . → Read More: PLINQO – Professional LINQ to Objects

XtraGridControl ve Linq EntitySet Refresh problemi

Devexpress 8.2.6 sürümünde XtraGridControl ile yaşadığım refresh problemi şu şekilde gerçekleşti : EntitySet i datasource olarak verdikten sonra, arka planda eklediğim herhangi bir entity grid üzerinde görünmemekteydi. Yani sadece grid üzerinden yaptığım değişiklikler görünüyor, arkaplandaki değişiklikler EntitySet nesnesi üzerinde debug anında görünmesine rağmen, grid üzerinde görünmüyordu.
Problemi teşhis ettikten sonra, ilk olarak grid nesnemin üzerindeki RefreshDataSource() methodunu . . . → Read More: XtraGridControl ve Linq EntitySet Refresh problemi

Form.KeyPreview ile tüm klavye hareketlerini yakalamak.

Control üzerinde bulunan ve dolayısıyla tüm windows kontrollerinde bulunan KeyDown, KeyPress, KeyUp eventları normal şartlarda sadece o anda focus (odak) lanan control üzerinde patlar. Ancak çoğu zaman bu bizim işimizi görmez ve formun neresinde olursa olsun klavye vuruşlarını yakalamak isteriz.
Bu sebeple bulunduğumuz formun, KeyPreview özelliğini true yaparız ve Form üzerindeki KeyDown, KeyPress yada KeyUp eventlarından birini . . . → Read More: Form.KeyPreview ile tüm klavye hareketlerini yakalamak.

Büyük text dosyaları performanslı okuma

Csharp ile büyük boyuttaki dosyaları daha performanslı okumak için aşağıda bulunan örnek kod satırını kullanabilirsiniz.

Kaynak

Stream inStream = File.Open("myfile.sql", FileMode.Open);

StreamReader reader = new StreamReader(inStream);

StringBuilder builder = new StringBuilder();

StringWriter writer = new StringWriter(builder);

writer.Write(reader.ReadToEnd());

reader.Close();

writer.Close();

string sqltext . . . → Read More: Büyük text dosyaları performanslı okuma

WebClient kullanarak Asenkron dosya indirmek

Uygulamamızda internet üzerinden dosya indirme ihtiyacı duyduğumuzda kullanabileceğimiz sınıflardan bir taneside System.Net.WebClient sınıfıdır. Bu yazıda bu sınıfı kullanarak bir web sitesinden dosya indirmeyi anlatmaya çalışacağım.

Uygulamayı bir windows forms uygulaması olarak geliştireceğiz.
Bunun için Visual Studio üzerinde yeni bir proje oluşturdum ve karşıma gelen Form1.cs üzerinde işlemleri yapıyorum.

Dizayn için gerekenler :
1 Windows form (Form1.cs)
1 TextBox (textBox1)
1 Button (button1)
1 . . . → Read More: WebClient kullanarak Asenkron dosya indirmek

?? operatörü (null coalescing operator) ve Nullable yapısı

C# 2.0 ile birlikte Nullable<T> yapısının hayatımıza girmesiyle birlikte yeni bir operatör daha kazandık. Özellikle veritabanındaki alanların karşılanması amacıyla eklenen Nullable<T> , değer tipteki veri tiplerinin null olabilmesi için kullanılır.

Tanımlaması :
Nullable<int> musteriNo = new Nullable<int>();
ya da
int? musteriNo = new int?();
şeklinde yapılabilir ikiside aynı sonucu veren kodlardır birincisi asıl sınıf ile çalışmamızı sağlamakta iken, diğeri yazımı kolaylaştırmak . . . → Read More: ?? operatörü (null coalescing operator) ve Nullable yapısı