3 Haziran 2013 Pazartesi

SqlCommand Nesnesi ile Birden Fazla Sorgu Çalıştırma

Merhaba arkadaşlar. Bugün yine fire vermeden blogumda yazı paylaşıyorum. paylaştıkça da mutlu oluyorum ve hepinize tavsiye etmeden geçemiyorum. Bugun ki konumuza gelecek olursak bugun ki konumuz Tek sqlcommand nesnesi ile birden fazla sorguyu çalıştırmak. Önceleri bende merak ediyordum böyle bişey  var mı diye hatta iki farklı sorgu için iki farklı sqlcommand bile tanımlamıştım. Kodlama kısmına geçecek olursak


SqlCommand cmd = new SqlCommand("select id, MusteriAdi from denemeTable; select MusteriAdi, MusteriSoyadi from Musteriler", cnn);

//İki farklı sorgumuzu aralarına ; işaret koyarak yazıyoruz. burası çok önemli asla unutmamamız gereken bi nokta.

        cnn.Open(); // Baglantımızı açıyoruz

        SqlDataReader dr = cmd.ExecuteReader(); //çalışan sorgudan dönen sonucu dr nesnemize aktarıyoruz

        bool baskasorguvarmi; //sorgu var mı yok mu kontrol etmek için bool türnde değişken tanımlıyoruz

        do
        {
            while (dr.Read())
            {
                ListBox1.Items.Add(dr[0].ToString() + " - " + dr[1].ToString()); // ilk sorgumuzda ki id ve
      MusteriAdi sutunlarını ekliyoruz
            }

            baskasorguvarmi = dr.NextResult();
  //ikinci sorgunun olup olmadığının kontrolünü nextresult() metodu ile yapıyoruz. 2. bi sorgu varsa  true, yoksa false dönecektir ve baskasorguvarmi değişkenin değerine göre tekrar while döngüsüne girerek listbox a veri ekleme işlemini yapacaktır

        }
        while (baskasorguvarmi);

Arkadaşlar yukarıda da görüldüğü gibi iki sorgu arasına  ; koymayı unutmuyoruz ve NextResults() metodu ile  ikinci sorgu var mı yok mu kontrol  ediyoruz. diğer kısımları zaten bildiğinizi varsayıyorum. Sorunlarınıza çözüm olması dileğiyle, hoşçakalın...

Kaynak : http://www.gencayyildiz.com
       

2 Haziran 2013 Pazar

C# String Metotları

Merhaba arkadaşlar. Bugün kü yazımda sıkça kullandığımız bize büyük kolaylıklar sağlayan string metotlarını ele alıcaz. Bende yanlış bilgi vermemek için diğer bloglara bakarak ve kodları yazarak sizlerle paylaşmak istedim.


string metin = "isa bal";

            bool a = metin.Contains("ı"); //metin stringinde ı harfi yok mu kontrol eder. varsa true yoksa false döndürür.

            Console.WriteLine("sonuç : " + a);

            bool b = metin.EndsWith("bal"); //metin stringinin içerisinde bal stringi varmı yok mu kontrol eder. varsa true yoksa false döndürür.

            Console.WriteLine("sonuc : " + b);

            bool c = metin.StartsWith("i"); //metin stringi i harfi ile başlıyomu. başlıyor ise true, başlamıyorsa false döndürür

            Console.WriteLine("sonuc : " + c);

            metin = metin.Insert(7, "ı"); //metin stringine 7. indexten itibaren ı harfini ekler.

            Console.WriteLine("sonuc : " + metin);

           Console.WriteLine("sonuç : " +  metin.Remove(2)); //2. indexten itibaren karakterleri siler. 2. karakterde dahil

           Console.WriteLine("sonuç : " + metin.Remove(1, 1)); //1. indexten itibaren bir karakter siler. yani sadece 1. karakter

            Console.WriteLine("sonuc : " + metin.Replace('i','O'));

            Console.WriteLine("sonuc : " + metin.Substring(3)); // 3. indexten itibaren tüm karakterleri alır

            Console.WriteLine("sonuc : " + metin.Substring(4, 2)); //3. indexten itibaren iki karakter alır

            Console.WriteLine("sonuc : " + metin.ToLower()); //tüm harfleri küçük yapar

            Console.WriteLine("sonuc : " + metin.ToUpper()); //tüm harfleri büyük yapar

            string[] dizim = metin.Split('a'); //metin stringini a harfine göre parçalar ve diziye atar. çıktıdan daha iyi anlayabiliriz.

            for (int i = 0; i < dizim.Length; i++)
            {
                Console.WriteLine(dizim[i]);
            }


            metin.Trim(); //metin değişkeninin başındaki ve sonundaki boşlukları siler

            metin.TrimEnd(); //metin değişkeninin sonundaki boşlukları siler

            metin.TrimStart(); //metin değişkeninin başındaki boşlukları siler.


Sonuç ekran çıktıları şekildeki gibi olacaktır. Faydalı olması dileğiyle iyi günler arkadaşlar...

1 Haziran 2013 Cumartesi

Collection Pager sınıfının kullanımı

Merhaba arkadaşlar. blogumda nerdese 1 yıldır bişi paylaşmıyorum, yeni mezun olmanın verdiği psikoloji ile artık bişilerin ucundan tutmak gerektiğini düşündüm ve deneyim ve bilgilerimi paylaşmaya karar verdim.Bugunkü konumuz Colleciton pager dll i. Bu dll ne işe yarar diye sorarsanız şöyle açıklayayım. Bir web sayfası yaptığımızı düşünün ve sayfada onlarca yüzlerce ürün, kayıt vb gösterilecek ve bunları gösterirkende repeater veya datalist gibi nesneler kullanmak isteyebiliriz. Ancak ne yazık ki bu nesnelerimizin gridview gibi sayfalama özelliği yok. Bu üzücü durumda yardımımıza collection pager dll i yetişiyor. Şahsen ben ilk kullandığımda derin bir oh çekmiştim. Öncelikle internetten collection pager dll download dediğimizde rahatlıkla bulup indirebiliriz. Daha sonra toolbox a sağ tıklayıp choose ıtem dedikten sonra açılan pencereden dll in yolunu belirtirsek collection pager nesnesi toolbox a eklenmiş olacaktır..artık Collection pager ı sayfamıza sürükle bırak yöntemi ile kullanabiliriz.

<%@ Register Assembly="CollectionPager" Namespace="SiteUtils" TagPrefix="cc1" %>
<asp:Repeater ID="Repeater1" runat="server">
    <ItemTemplate>
        <%#Eval("Veri") %>
    </ItemTemplate>
</asp:Repeater>
<cc1:CollectionPager ID="CollectionPager1" PageSize="10" runat="server" BackNextLocation="Split" BackText="Geri" FirstText="İlk" LabelText="Sayfa:" LastText="Son" NextText="İleri" QueryStringKey="Sayfa" ResultsFormat="Sayfa {0}-{1} (of {2})"></cc1:CollectioknPager>

yukarıda gördüğümüz gibi kodda collection pager ın özellikleri de belirtilmiş. artık .cs kısmına gelerek collection pager a sayfalayacağı veri kaynağını gösterelim.

CollectionPager1.DataSource = dt(datatable değişkeni olabilir veya veri dizisi )
    CollectionPager1.BindToControl = Repeater1;
    Repeater1.DataSource = CollectionPager1.DataSourcePaged;

Bu şekilde onlarca verimizi sayfalamış olduk. Gerçekten çok kullanışlı ve işe yarayan bi dll. Sorunlarınıza çözüm getirmesi dileğiyle