Ana içeriğe atla

Kayıtlar

Aralık, 2010 tarihine ait yayınlar gösteriliyor

Using diğer bir deyişle Try-Finally

Bu yazımızda using ifadesi nedir, ne değildir, ne yapar onu inceleyeceğim... Yine daha önce olduğu gibi basit bir kod yazarak konunun daha anlaşılabilir olmasını istiyorum. using System.Data; namespace Using_TryFinally { class Deneme { static void Main() { using (DataTable dt = new DataTable()) { } } } } şeklinde hiçbir şey yapmayan bir kodumuz olsun. Bu kodu Visual Studio (VS) ile konsol uygulaması olarak derlediğiniz zaman ortaya çıkan exe'nin kodunu .NET Framework IL Disassembler (IL DASM) açıyoruz. Bu şekilde aslında arka planda neler oluyor, kodumuz ne hale geliyor onu görmüş oluyoruz. Şimdi VS'nin bizim kodumuzu dönüştürdüğü kodu bir inceleyelim: .method private hidebysig static void Main() cil managed { .entrypoint // Code size 29 (0x1d) .maxstack 2 .locals init ([0] class [System.Data]System.Data.DataTable dt, [1] bool CS$4$0000) IL_0000: nop ...

Windows Server 2008 Cluster With Virtual PC

Merhaba, bu yazıma başlamadan önce dün benimle birlikte yazmaya başlayan iş arkadaşım,can dostum güzel insan Ogün'e hoşgeldin demek istiyorum.Aslında bu yazıyı aceleye getirip şuan yazmamın da sebebi bu :) Bu yüzden fazla ayrıntıya girmeyeceğin zaten bu konuyla ilgili birçok güzel kaynak internette bulunmakta.Bunlardan bir kaçının linkini vereyim belki bu yazıyı okumayı çok istemiyorsunuzdur :) ÇözümPark'tan Alper Özdemir'in yazısı ve yine ÇözümPark'tan Serhat Akıncı'nın yazıları: http://www.cozumpark.com/blogs/windows_server/archive/2010/01/17/windows-server-2008-cluster-mimarisi.aspx http://www.serhatakinci.com/index.php/tag/windows-server-2008-cluster Gelelim benim bu konuda söylemek istediklerime.Bu işlerde aşırı çaylak bir eleman olarak takıldığım birçok konu oldu kurulum sırasında yada her zaman olduğu gibi ince ayrıntılar.Mesela ben sanal makinalarla 2 node'lu bir cluster yapısı kurmayı amaçlıyordum böyle örneklere vardı fakat windows 7 üzerinde...

String.Empty ve "" karşılaştırması

benim için beklenmedik bir şekilde performans açısından kazanan string .empty! bugün aşağıdaki örnekteki str1 ve str2 değişkenlerinin durumunu ve bir farkı olup olmadığını inceleyeceğiz. class StringDeneme { static void Main() { string str1 = string.Empty; string str2 = ""; } } yukarıdaki kodu console projesinde derleyip oluşan .exe'mizi ildasm ile incelediğimizde şu kodu görüyoruz: .method private hidebysig static void Main() cil managed { .entrypoint // Code size 14 (0xe) .maxstack 1 .locals init ([0] string str1, [1] string str2) IL_0000: nop IL_0001: ldsfld string [mscorlib]System.String::Empty IL_0006: stloc.0 IL_0007: ldstr "" IL_000c: stloc.1 IL_000d: ret } // end of method Program::Main str1 değişkenimize string [mscorlib]System.String::Empty değeri atanmış (ldsfld) yöntemiyle. str2 değişkenimize "" değeri atanmış (ldstr) yöntemiyle. msdn'nden ldsfld'nin açıklamasına...

TC Kimlik No Algoritması

Oluşabilecek tüm kimlik numaralarını hesaplayan algoritmayı aşağıda bulabilirsiniz. Bu sayede tam hatırlayamadığınız bir kimlik numarasını bulabilirsiniz mesela. Ben bu yüzden kullanmıştım bu algoritmayı. for (int a1 = 1; a1 for (int a2 = 0; a2 for (int a3 = 0; a3 for (int a4 = 0; a4 for (int a5 = 0; a5 for (int a6 = 0; a6 for (int a7 = 0; a7 for (int a8 = 0; a8 for (int a9 = 0; a9 { int tekBasamaklar = a1 + a3 + a5 + a7 + a9; int ciftBasamaklar = a2 + a4 + a6 + a8; int t1 = (tekBasamaklar * 3) + ciftBasamaklar; int c1= (10 - (t1 % 10)) % 10; int t2 = c1 + ciftBasamaklar; int t3 = (t2 * 3) + tekBasamaklar; int c2 = (10 - (t3 % 10)) % 10; string tc = String.Format("{0}{1}{2}{3}{4}{5}{6}{7}{8}{9}{10}", a1, a2, a3, a4, a5, a6, a7, a8, a9, c1, c2); Console.WriteLine(tc); } ya da bu algoritmayla biraz daha oynayıp şu şekilde işler yapabilirsiniz: /// Girilen 9 basamaklı sayının son iki basamağını bulup TC Kimlik No oluşturur string tc = Console....