LINQ Query Expressions

Hiç yorum yok
Merhaba Arakdaşlar,

Kuzey Rüzgari veri tabanı üzerinde daha önceden mssql alt sorgular kısmında paylaşmış olduğum t-sql sorgularının linq Expressions'ları ile uygulama geliştiriyor olacağız.








   Soru  1) Hangi kategoriden kaç birim Urun var

            var sorgu = from urun in db.Products
                        join kategori in db.Categories on urun.CategoryID equals kategori.CategoryID
                        group urun by kategori.CategoryName into grup
                        select new {
                              grup.Key,
                            UrunAdeti= grup.Sum(x=>x.ProductID)
                        };
            dgvSonuc.DataSource = sorgu.ToList();

    Soru  2) Musterilerin gerçekleştirdiği ilk siparis tarihi

            var sorgu = (from satis in db.Orders
                        join musteri in db.Customers on satis.CustomerID equals musteri.CustomerID
                        group satis by musteri.CompanyName into grup
                        select new
                        {
                            grup.Key,
                            SatisTarihi= grup.Min(x=>x.OrderDate),
                         }).OrderBy(x=>x.SatisTarihi);
            dgvSonuc.DataSource = sorgu.ToList();




 Soru 3)    03.03.1997 yılında yapılan Siparisler gelsin

            DateTime tarih=  Convert.ToDateTime(txtTarih.Text);

              var sorgu = from satis in db.Orders
                          where satis.OrderDate == tarih

                          select satis;

              dgvSonuc.DataSource = sorgu.ToList();
    Soru  4) siparişler Tablosunda  en küçük sipariş tarihi gelsin

            var sorgu = (from satis in db.Orders
                        group satis by satis into grup
                        select new {

                        EnkucukTarih= grup.Min(x=>x.OrderDate)
                        }).Take(1).ToList();

            dgvSonuc.DataSource = sorgu;

    Soru  5) Firmların yaptıkları ilk sipariş tarihleri gelsin

            var sorgu = (from satis in db.Orders
                        join musteri in db.Customers on satis.CustomerID equals musteri.CustomerID
                        group satis by satis.Customer.CompanyName into grup
                        select new
                        {
                           SiparisSahibi= grup.Key,
                          SiparisTarihi= grup.Min(x=>x.OrderDate)
                        }).OrderByDescending(x=>x.SiparisTarihi).ToList();

            dgvSonuc.DataSource = sorgu;

     Soru   6)  Siparis adeti 4 den buyuk sirketler gelsin


            var sorgu = (from satis in db.Orders
                         join musteri in db.Customers on satis.CustomerID equals musteri.CustomerID
                         where musteri.CustomerID==satis.CustomerID
                         group musteri by musteri into grup
                         select new
                         {
                             FirmaAdi = grup.Key.CompanyName,
                             MusteriAdi= grup.Key.CustomerID,
                             SatisAdeti = grup.Count(),


                         }).Where(x => x.SatisAdeti > 4).ToList();
            dgvSonuc.DataSource = sorgu;

            int sayi = sorgu.Count();

    Soru 7)  Ürünler tablosunda ne kadar ürün var

             var sorgu = (from urun in db.Products
                          select urun).Sum(x => x.UnitsInStock);
             //yada
            var sorgu2= db.Products.Sum(x => x.UnitsInStock);
             MessageBox.Show(sorgu2.ToString());

   Soru  8) Hangi üründen Kaç birim Stock var


            var sorgu = from urun in db.Products
                        group urun by urun into grup
                        select new {
                         UrunAdi= grup.Key.ProductName,
                        Adeti=grup.Sum(x=>x.UnitsInStock)
                        };
            dgvSonuc.DataSource = sorgu.ToList();

    Soru   9)  Hangi Kategoriden kaç birim urun var

            var sorgu = from kategori in db.Categories
                        join urun in db.Products on kategori.CategoryID equals urun.CategoryID

                        group urun by urun.Category.CategoryName into grup
                        select new
                        {
                          KategoriAdi= grup.Key,
                          Adet=grup.Sum(x=>x.UnitsInStock)

                        };

            dgvSonuc.DataSource = sorgu.ToList();

      Soru  10 ) Kac farklı ülkeye satış yapılmış

            var sorgu = (from satis in db.Orders
                         select new { satis.ShipCountry }).Distinct();
            dgvSonuc.DataSource = sorgu.ToList();

            yada

            var sorgu2 = from satis in db.Orders
                         group satis by satis.ShipCountry into grup
                         select new { UlkeAdi=grup.Key };

            dgvSonuc.DataSource = sorgu2.ToList();

    Soru  12) hangi Ulkeye Kaçtane Siparis yapıldı

            var sorgu = from satis in db.Orders
                        group satis by satis.ShipCountry into grup
                        select new {
                           UlkeAdi= grup.Key,
                            SiparisAdet= grup.Count()
                        };
            dgvSonuc.DataSource = sorgu.ToList();

     Soru   13 )1996 yılında hangi ülkeye kaçtane sipariş gitmiş


            var sorgu = from satis in db.Orders
                        where satis.OrderDate.Value.Year==1996
                        group satis by satis.ShipCountry into grup
                        select new {
                         UlkeAdi=grup.Key,
                         Adeti= grup.Count(),

                        };

            dgvSonuc.DataSource = sorgu.ToList();

     Soru    14) 1996 yılında hangi ülkeye kaçtane sipariş gitmiş ve siparis sayısı 15 den büyük olan kayıtlar gelsin

            var sorgu = (from satis in db.Orders
                        where satis.OrderDate.Value.Year == 1996
                        group satis by satis.ShipCountry into grup
                        select new
                        {
                            UlkeAdi = grup.Key,
                            Adeti = grup.Count(),


                        });
            dgvSonuc.DataSource = sorgu.ToList();     

         Soru   15 ) Ülkelere giden kargoların ülke bazında ortalama taşıma ücretini  çokdan aza sıralayınız

            var sorgu = (from satis in db.Orders
                        group satis by satis.ShipCountry into grup
                        select new
                        {
                            UlkeAdi=grup.Key,
                           TasimaUcreti= grup.Average(x=>x.Freight)
                        }).OrderByDescending(x=>x.TasimaUcreti);

            dgvSonuc.DataSource = sorgu.ToList();

     Soru    16 ) Çalışanların ünvanlarının sayısı

            var sorgu = (from calisan in db.Employees
                        group calisan by calisan.TitleOfCourtesy into grup
                        select new {
                        Unvan= grup.Key,
                        Adet=grup.Count()
                        }).OrderByDescending(x=>x.Adet);
            dgvSonuc.DataSource = sorgu.ToList();

     Soru 17)  En yüksek ortalama uçuş fiyatı hangi ülkeye gitmiştir

            var sorgu = (from satis in db.Orders
                        group satis by satis.ShipCountry into grup
                        select new {
                        Ulke= grup.Key,
                        OrtalamaUcusFiyat= grup.Average(x=>x.Freight)
                        }).OrderByDescending(x=>x.OrtalamaUcusFiyat).Take(1);

            dgvSonuc.DataSource = sorgu.ToList();

    Soru   18)  Şimdiye kadar satılan ürünlerden nekadar hasılat elde ettik

            var sorgu = from satisdetay in db.Order_Details
                        join urun in db.Products on satisdetay.ProductID equals urun.ProductID
                        group satisdetay by urun.ProductName into grup
                        select new
                        {
                            UrunAdi = grup.Key,
                            AraToplam = grup.Sum(x => (x.Quantity * x.UnitPrice) )
                        };
            dgvSonuc.DataSource = sorgu.ToList();


Şimdi İse Entity Framework'de Crud İşlemlerine(Düzenle Sil Ekle Listele) ve  Lazy Loading, Eager Loading 'e Bakalım  Proje İndir

Video Anlatım 





Uygulama 2 indir


Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Asp.Net Identity Ve Owin Uyelik Sistemi Uygulama Serisi

Hiç yorum yok





Merhaba Arkadaşlar ,

DuffDunn Shoes Store Adlı e-commerce uygulamasını Asp.net Mvc5 ile yazmaya başlarken öncelikle üyelik sistemi üzerinden devam edip
sayların (asp.net authentication and authorization) rollere ve verilen izinlere  görünürlüğünü kodlama yaparken kullanacağım sisteme benzer bir yapıyı burdan uygulama olarak paylaşıyor olacağım.

1) Kullanıcıların Listelenmesi ve Owine Giriş Uygulaması Proje Indir

2)Kullanıcıların Edit İşlemleri(Sifre Email Password Güncelleme İşlemleri) Uygulama Indir

3)Kullanıcıların Sisteme Login Olması ve Asp.Mvc Authorize İşlemleri Uygulama Indir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

c# Döngüler For Kullanımı

Hiç yorum yok

 C# Console Uygulamaları For Döngüsü



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SinanArslanConsoleUygulamalari
{
    class Program
    {
        static void Main(string[] args)
        {
            #region Klavyeden Girilen 10 Sayının en büyüğünü bulan program
            //Klavyeden Girilen 10 Sayının en büyüğünü bulan program

            //int sayi = 0;
            //int enbyk = 0;

            //for (int i = 1; i <= 10; i++)
            //{
            //    Console.WriteLine("{0} inci sayiyi giriniz", i);
            //    sayi = Convert.ToInt32(Console.ReadLine());
            //    if (i == 1)
            //        enbyk = sayi;
            //    if (sayi > enbyk)
            //        enbyk = sayi;

            //}
            //Console.WriteLine("{0} girilen enbuyuk sayıdır", enbyk);
            //Console.ReadLine();
            #endregion


            #region Kalvyeden Girilen iki sayı arasındaki sayıların toplamı ve çarpımını bulan program

            //int sayi1 = 0; int sayi2 = 0; int toplam = 0; int carpim = 1;

            //Console.WriteLine("Kucuk sayiyi giriniz");
            //sayi1 = Convert.ToInt32(Console.ReadLine());

            //Console.WriteLine("Buyuk sayiyi giriniz");
            //sayi2 = Convert.ToInt32(Console.ReadLine());

            //for (int i = sayi1; i <= sayi2; i++)
            //{
            //    Console.Write("{0} -", i);
            //    //toplam += i;
            //    toplam = toplam + i;
            //    carpim = carpim * i;
            //}
            //Console.WriteLine("Sayıların Toplami :{0}", toplam);
            //Console.WriteLine("--------");
            //Console.WriteLine("Sayıların Çarpimi :{0}", carpim);
            //Console.ReadLine();
            #endregion



            #region   1 ila 100(dahil) arasında kaç adet asal sayi vardır
            //int adet = 4;//2,3,5,7

            //for (int i = 8; i <= 100; i++)
            //{
            //    if (i % 2 != 0)
            //    {
            //        if (i % 3 != 0)
            //        {
            //            if (i % 5 != 0)
            //            {
            //                if (i % 7 != 0)
            //                {
            //                    adet++;
            //                }
            //            }
            //        }
            //    }
            //}
            //Console.WriteLine("{0} adet sayi vardir", adet);
            //Console.ReadLine();
            #endregion


            #region Girilen sayıların faktoriellerini hesaplayan programını yazınız
            //0 faktoriel =1

            //int sayi;
            //Console.WriteLine("Faktoriel i hesaplanacak sayi giriniz");
            //sayi = Convert.ToInt32(Console.ReadLine());
            //int faktoriel = 1;

            //for (int i = sayi; i >1; i--)
            //{
            //    faktoriel = faktoriel * i;
            //}
            //Console.WriteLine("Hesaplanan Faktoriel {0}", faktoriel);
            //Console.ReadLine();
            #endregion



            #region Klavyeden Girilen Metini ters ceviren program
            #region 1.inci Yol
            //Console.WriteLine("Tersine cevirilecek metini yaziniz");

            //string metin = Console.ReadLine();
            //string terstenmetin = "";

            //for (int i =  metin.Length-1; i >=0; i--)
            //{
            //    terstenmetin += metin[i];
            //}
            //Console.WriteLine(string.Format("{0} girilen metin {1} tersten okunanan metin", metin, terstenmetin));
            //Console.ReadLine();
            #endregion

            #region 2 inci yol
            //string metin;
            //Console.WriteLine("Tersten Yazdırılacak metini giriniz");

            //metin = Console.ReadLine();

            //for (int i = 0; i <= metin.Length - 1; i++)

            //    Console.Write(metin[metin.Length - i - 1]);
            //Console.ReadLine();
            #endregion
            #endregion

            #region 1 den 10 kadar olan sayıların çarpım tablosu şeklinde yazdıran program
            //

            //for (int i = 1; i <= 10; i++)
            //{
            //    for (int j = 1; j <= 10; j++)
            //    {
            //        Console.WriteLine(string.Format("{0}x{1}={2}", i, j, (i * j)));

            //    }

            //    Console.WriteLine("============================================");

            //}
            //Console.ReadLine();
            #endregion



            #region 1 den 1000 kadar olan  sayıların arasındaki tek sayıların toplamını bulunuz

            //int toplam = 0;
            //for (int i = 1; i <10; i+=2)
            //{
            //    toplam += i;
            //}
            ////1,3,5,7,9
            //Console.WriteLine("{0} bulunan tek sayıların toplamı", toplam);
            //Console.ReadLine();
            #endregion



            #region 1 ila 100 arasındaki çift sayıların toplamının karesini bulan program
            //int cifttoplam = 0;

            //for (int i = 0; i <10 ; i+=2)
            //{
            //    cifttoplam += i;
            //}
            ////2 4 6 8
            //int karesi = cifttoplam * cifttoplam;
            //Console.WriteLine("{0} çiftlerin toplamının karesi", karesi);
            //Console.ReadLine();
            #endregion

         

            #region Belirtilen dizideki sayılardan kaç adet çift kac adet tek sayi vardır,tek sayıların toplamı çift toplamı arasındaki fark nedir
            //int[] sayilar = { 32, 44, 17, 27, 97, 104 };

            //int teksayimiktari = 0;
            //int ciftsayimiktari = 0;

            //int ciftsayilarintoplami = 0;
            //int teksayilarintoplami = 0;

            //for (int i = 0; i < sayilar.Length; i++)
            //{
            //    if (sayilar[i] % 2 == 0)
            //    {
            //        ciftsayimiktari++;
            //        ciftsayilarintoplami += sayilar[i];
            //    }
            //    else
            //    {
            //        teksayilarintoplami += sayilar[i];
            //        teksayimiktari++;
            //    }
            //}
            //Console.WriteLine("Bu dizide toplam {0} adet cift sayi {1} adet tek sayi bulunmaktadır.Cift sayilarla tek sayiların farkı{2} dır ", ciftsayimiktari, teksayimiktari, (ciftsayilarintoplami - teksayilarintoplami));
            //Console.ReadLine();
           
            #endregion
            //girilen sayının rakamları toplamı nedir

            int toplam = 0;
            Console.WriteLine("Rakamları toplamını ogrenmek istediginiz sayiyi giriniz");

            string girilendeger = Console.ReadLine();
            for (int i = 0; i < girilendeger.Length; i++)
            {
                toplam += Convert.ToInt32(girilendeger[i].ToString());

            }
            Console.WriteLine(" Rakamlar toplami={0}", toplam);
            Console.ReadLine();
        }
    }
}
Video Anlatım 1.Bölüm




Video Anlatım 2.Bölüm


Uygulama Indir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

C# Datagridview'deki Verileri CheckBoxlara Göre Excel’ e Veri Aktarma

Hiç yorum yok
Merhaba Arkadaşlar ,

Bu bölümde C# Datagridview'deki Verileri CheckBoxlara Göre Excel’ e Veri Aktarma yönetmine bakıyor olacağız.Amacımız Datagridview'de listelemiş olduğumuz kayıtlardaki checkboxların durumuna göre excel'e verilerimizi aktırıyor olacağız.

Yazmış olduğumuz projede katmansal yapıya uygun olarak entity bölümünde veri tabanından gelecek olan tablomuzun modellenmesi işlemini Façade de ise yazacağımız methodlar yardımıyla user interfacemiz olan Windows Forms uygulamamızdaki talepleri gerçekleştirdik.Entity katmanımızı Façadeye refere edip ,Façadeyi ise Windows Forms uygulamamıza refere ederek kullandık.

Birde unutulmaması gereken Microsoft Office için ilgili dll dosyamızı   Windows Forms uygulamamıza refere ettik .(References-> sag tık -> Add Referans->Microsoft.Office.Interop.Excel (Microsoft Excel 15.0 Object Library) dll 'ni refere ettik






















Excel'e  Veri Aktarma Uygulaması  İndir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

C# Algoritma Örnekleri

3 yorum
  
   
Merhaba Arkadaşlar bu bölümde console uygulamaları ile algoritma örneklerine yönelik sorular üzerinden ilerleyip bir nevi işin temel mantığı olan algoritma yapılarına değiniyor olacağız.Bu aşamada belirtmekte fayda var hazırlamış olduğum örneklerin bir kısmı farklı yollardan da yapılabilinir.Zaman kaybetmeden ilk örneğimizle başlayalım

Örnek 1)Kişi Cinsiyet ve yaşını alalım yaşı 20' den büyük olanlardan erkek ise askerlik durumunu kontrol edelim
            string _Cinsiyet;

            int _Yas;

            Console.WriteLine("Cinsiyetinizi Giriniz! Erkek için : E Bayan için :B");

            _Cinsiyet = Console.ReadLine();

            Console.WriteLine("Yasınızı Giriniz");

            _Yas = Convert.ToInt32(Console.ReadLine());

            if (_Cinsiyet == "E" && _Yas >= 20)
            {
                Console.WriteLine("Askere Gidebilirsiniz");
                Console.Read();
            }
            else if (_Cinsiyet == "E" && _Yas < 20)
            {
                Console.WriteLine("Askerlik İçin Uygun Değil");
                Console.Read();
            }
            else
            {
                Console.WriteLine("Bayan Olduğunuz İçin Askerlik Yapamazsınız");
                Console.Read();
            }
Örnek 2)    Klavyeden mevsim girilmesi istenerek bu mevsime ait ayları ekranda yazan program    
             ilkbahar - mart nisan mayis
             yaz - haziran temmuz agustos
             sonbahar - eylül ekim kasim
             kis - aralik ocak subat

            Console.WriteLine("Mevsimlere ait aylari gösteren programa hosgeldiniz");
            Console.WriteLine("Lutfen ogrenmek istediginiz mevsimi giriniz");
            string mevsim = Console.ReadLine().ToLower();

            #region İf Kullanım Mevsimler
            İF KONTROLLÜ KULLANIM uygulamamıza ilk başlarken de dediğim gibi birden fazla yolla yapılabilinir şimdi // SWİTCH - CASE KULLANIMI na bakıyor olalım alt bölümde

            if (mevsim == "ilkbahar")
            {
                Console.WriteLine("{0} mevsimine ait aylar : Mart, Nisan, Mayis", mevsim);            //  
            }
            else if (mevsim == "Yaz")
            {
                Console.WriteLine("{0} mevsimine ait aylar : Haziran, Temmuz, Agustos", mevsim);
            }
            else if (mevsim == "Sonbahar")
            {
                Console.WriteLine("{0} mevsimine ait aylar : Eylul, Ekim, Kasim", mevsim);
            }
            else if (mevsim == "Kis")
            {
                Console.WriteLine("{0} mevsimine ait aylar : Aralik, Ocak, Subat", mevsim);
            }
            else
            {
                Console.WriteLine("Mevsim disinda bir kelime girdiniz!");
            }
            Console.ReadKey();

            SWİTCH - CASE KULLANIMI

            switch (mevsim)
            {
                case "ilkbahar":
                    Console.WriteLine("{0} mevsimine ait aylar : Mart, Nisan, Mayis", mevsim);
                    break;
                case "yaz":
                    Console.WriteLine("{0} mevsimine ait aylar : Haziran, Temmuz, Agustos", mevsim);
                    break;
                case "sonbahar":
                    Console.WriteLine("{0} mevsimine ait aylar : Eylul, Ekim, Kasim", mevsim);
                    break;
                case "kis":
                    Console.WriteLine("{0} mevsimine ait aylar : Aralik, Ocak, Subat", mevsim);
                    break;
                default:
                    Console.WriteLine("Dogru bilgi giriniz!");
                    break;
            }

            Console.ReadKey();

Örnek 3)Kullanıcıdan alınan   notların ortalamasını hesaplayan programı yazınız
            int Toplam = 0;

            Console.WriteLine("Kac Adet Notun Girilecegini Yaziniz\n");

            string GelenSayi = Console.ReadLine();
            Console.WriteLine(GelenSayi + "adet Notun ortalamasi hesaplanacak");
            int donussayisi = Convert.ToInt32(GelenSayi);

            for (int i = 1; i <= donussayisi; i++)
            {
                Console.Write(i + "inci not\n");
                int sayi = Convert.ToInt32(Console.ReadLine());
                Toplam = Toplam + sayi;
            }
            double ort = (double)Toplam / donussayisi;
            Console.WriteLine("Girilen Notun Ortalamasi =" + ort);
            Console.ReadKey();

Örnek 4)Klavyeden girilen 5 adet sayının en büyüğünü bulan program
            int sayi, enbuyuk = 0;

            //
            Console.WriteLine("Klavyeden girilen 5 adet sayının en büyüğünü bulan program....");

            for (int i = 1; i <= 5; i++)
            {
                Console.WriteLine("{0} inci sayi giriniz.", i);
                sayi = Convert.ToInt16(Console.ReadLine());
                if (i == 1)
                    enbuyuk = sayi;
                if (sayi > enbuyuk)
                    enbuyuk = sayi;

            }
            Console.WriteLine("En buyuk sayi {0}", enbuyuk);
            Console.ReadKey();
Örnek 5)Girilen Üç Sayıdan En buyuk olanını bulan program

            int sayi1, sayi2, sayi3;
            Console.WriteLine("Birinci Sayi Giriniz");

            sayi1 = Convert.ToInt16(Console.ReadLine());

            Console.WriteLine("ikinci Sayi Giriniz");

            sayi2 = Convert.ToInt16(Console.ReadLine());

            Console.WriteLine("ucuncu Sayi Giriniz");

            sayi3 = Convert.ToInt16(Console.ReadLine());

            int enbuyuk = 0;
            if (sayi1 > enbuyuk)
                enbuyuk = sayi1;
            if (sayi2 > enbuyuk)
                enbuyuk = sayi2;
            if (sayi3 > enbuyuk)
                enbuyuk = sayi3;
            Console.WriteLine("{0} en buyuk olan sayi", enbuyuk);
            Console.ReadKey();

Örnek 6)Klavyeden Girilen sayıların Toplamı
            int sayi1 = 0;
            int sayi2 = 0;

            Console.WriteLine("Toplanacak sayi giriniz");
            sayi1 = int.Parse(Console.ReadLine());
            Console.WriteLine("Toplanacak ikinci sayiyi giriniz");
            sayi2 = int.Parse(Console.ReadLine());

            double toplam = (double)sayi1 + sayi2;
            Console.WriteLine("{0} Girilen sayilarin toplami", toplam);
            Console.ReadKey();
Örnek 7)100 lük sistemdeki notun 5 lik sisteme ceviren program
            int not = 0;

            Console.WriteLine("100 lük sistemdeki notun 5 lik sisteme ceviren program");

            Console.WriteLine("Notunuzu Giriniz");
            not = int.Parse(Console.ReadLine());

            if (not >= 0 && not < 25)
                Console.WriteLine("Notunuz 0 ");
            if (not >= 25 && not < 45)
                Console.WriteLine("Notunuz 1 ");
            if (not >= 45 && not < 55)
                Console.WriteLine("Notunuz 2 ");
            if (not >= 55 && not < 70)
                Console.WriteLine("Notunuz 3 ");
            if (not >= 70 && not < 85)
                Console.WriteLine("Notunuz 4 ");
            if (not >= 85 && not < 100)
                Console.WriteLine("Notunuz 5 ");

            Console.ReadKey();

Örnek 8)Klavyeden Girilen 10 sayının toplamı

            int sayi;
            int toplam = 0;

            for (int i = 1; i < 10; i++)
            {
                Console.WriteLine("{0}. inci Sayi giriniz", i);
                sayi = Convert.ToInt16(Console.ReadLine());
                //toplam = toplam+sayi;
            }
            Console.WriteLine(" Sayilarin Toplami{0}\n", toplam);
            Console.ReadKey();

Örnek 9)Klavyeden Girilen Adı ,Soyadı girilen adet kadar ekrana yazdıran program
            string ad = "";
            string soyad = "";
            int adet;

            Console.WriteLine("Adinizi Giriniz ");
            ad = Console.ReadLine();

            Console.WriteLine("Soyadinizi Giriniz ");
            soyad = Console.ReadLine();

            Console.WriteLine("Adinizi Kac Defa Yazilsin");
            adet = int.Parse(Console.ReadLine());

            for (int i = 0; i < adet; i++)
            {
                Console.WriteLine("{0} Adiniz={1} Soyadiniz={2} ", i, ad, soyad);
            }
            Console.ReadKey();
Örnek 10)Klavyeden Girilen Sayi Tek mi Çift mi bulan program
            int sayi;

            Console.WriteLine("Kontrol Edilcek Sayiyi Giriniz");
            sayi = int.Parse(Console.ReadLine());

            if (sayi % 2 == 0)
            {
                Console.WriteLine("Girilen Sayı {0} cift sayidir", sayi); Console.ReadKey();
            }
            else
            {
                Console.WriteLine("Girilen Sayı {0} tek sayidir", sayi); Console.ReadKey();
            }

Uygulama Indir

3 yorum :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Asp.Net Web Api Kullanımı

1 yorum


Merhaba Arkadaşlar,

API’nin açılımı “Application Programming Interface” dir, İngilizceden direkt Türkçeye çevirildiğinde ise “Uygulama Programlama Arayüzü” olarak geçer. 

WCF ile Web Api arasındaki en büyük farklardan birisi Web Api’lerin tamamen REST üzerine kurulu olmasıdır. REST mimarisi temelde Proxy’ye ihtiyaç duymaksızın HTTP istekleri ile basitçe gerçekleştirilebilen Get, Post, Put, Delete ve benzeri metotlarını destekler. Bu sayede de nereden ve hangi uygulamadan istekte bulunulursa bulunulsun, özel durumlar dışında Web Api’ye erişilebilecektir.

Web Api’lere herhangi bir kısıtlama getirilmediği sürece, istemcinin talebine göre jSon, Xml gibi formatlarda çıktı verebilirler.Kaynakça(https://coderwall.com/p/cpdzuw/asp-net-web-api), Kaynakça(http://www.asp.net/web-api)

Video 1:

Asp.Net Web Api Intro Uygulaması Indir

Video 2 :

Asp.Net Web Api Entity Framework Uygulaması Indir

Video 3:

Asp.Net Web Api Get Data With Jquery (Json) Uygulaması Indir

Video 4:

Asp.Net Web Api Post Data With Jquery (Json) Uygulaması Indir

Video 5:

Asp.Net Web Api OData Uygulaması Indir


Umarım Faydalı Olur.

Daha Fazlası İçin Tıklayınız

1 yorum :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Asp.Net Ajax Jquery İşlemleri Ve WebMethod Kullanımı

1 yorum
Merhaba Arkadaşlar,

Bu uygulamamızda ajax jquery işlemlerine bakıyor olacağız.Genel anlamda proje yada uygulama yazarken Asp.Net Mvc yada Asp.Net Web Forms olarak ayrım yapmadan yazıyor olsamda asp.net mvc üzerinde JsonResult olarak kullandığımız Actionlarımıza benzer bir yapıyı bu sefer Asp.Net WebFormslarda ele alıp işlemeyi tercih ettim.

Sözün özü ajax jquery ile listeme silme ve güncelleme zaman kalırsa da ekleme işlemlerine değinebileceğimiz WebMethodlar yardımıyla uygulama geliştirebileceğimiz bir uygulama yazıyor olacağız.

   1.Bölüm: Listeleme İşlemleri


Video Anlatım:


1.inci Bölüm Uygulama İndir.

2.Bölüm :Silme İşlemleri 

//Category'leri silmek yerine başka uygulamalardada lazım olur diyerek güncelleme işlemi seçtim bunun için categories tablosuna visible isminde veri tipi bit olan bir kolon ekledim

2.Bölüm Video Anlatım:


2.Bölüm Uygulama Indir



3.Bölüm Uygulamanın Son Hali Indir

Umarım Faydalı Olur.

1 yorum :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Asp.Net Mvc Simple Membership Üyelik Sistemi

3 yorum
Merhaba Arkadaşlar ,

Bu bölümde basic olarak (login-logout zaman kalırsa remember me kodlarını yazıyor olacağız.) bulunduğu bir uygulama geliştiriyor olacağız.

Bunu makaleyi yazmamdaki sebebaşğıdaki hatayı eski membershiple yazmış olduğum bir uygulama içersinde almış olmam.İnternette araştırıp belli başlı çözüm yolu sunan örnekler bulsamda denelerim sonucunda işe yaramadıklarını gördükden sonra simple membership ile code first yaklaşımı ile uygulama geliştirip kullanmaya karar verip bu makalenin bu satırına kadar geldim.

İşlerimden zaman buldukça yazacağımız üyelik sistemimizde basit manada ilk uygulamamızı tamamlayıp daha sonra var olan bir proje üzerinden entegre edilmiş halini sizlerle paylaşıyor olacağım.


Bu makaleye zaman buldukça video yada proje aşamalarını ekleyerek devam ediyor olacağım.Umarım Faydalı olur.


Uygulamanın video anlatımını daha iyi anlaşılması açısından müsait bir zamanda gerçekleştiriyor olacağım.Proje İçindeki yorum satırlarını dikkate alarak debug modda işlemlerin nasıl olduğuna bakıldığında anlaşılacaktır diye düşünüyorum.İlerleyen aşamalarda ise Asp.Net Mvc içindeki hazır gelen membership yapısını customize ederek geliştirdiğimiz projede kullanıyor olacağız.Umarım faydalı olur.

Simple MemberShip Giriş Proje 1 indir


Veri Tabanı Dosyası Son Hali
























Asp.Net MVC Simple Membership Entegrasyonu Video








3 yorum :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

StreamWriter ve StreamReader ile Dosya Yazma okuma işlemleri

Hiç yorum yok
Merhaba Arkadaşlar

Bu bölümde StreamReader ve StreamWriter Sınıflarının kullanımına bakıyor olacağız.Asıl itibari ile daha evvelden yazmış olduğum richtextbox kullanıma yönelik basit manada bir uygulama yazıyor olacağız.Amacımız uygulamamızın çalıştığı bin-> debug klasörü içinde bir .txt uzantılı metin belgesi açıp içine textboxdan girilen degerleri yazıp okuyor olacağız.Zaman kaybetmeden uygulamamıza geçelim.

Bir adet windows forms application açıp uygulamamıza burdaki görüntüyü elde edelim

 Daha Sonra buttonlarımız ve textboxlarımızı isimlendirip kodlarımıza gecelim ekranda büyük gözüken richtextbox yukardaki ufak olanda (fakir) textbox neyse kodlarımıza bakalım.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.IO;
using System.Windows.Forms;

namespace wfStream
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //StreamWriter sw = new StreamWriter("SinanArslan.txt"); //Dosya yoksa yeni oluşturur, varsa her seferinde baştan yazmaya başlar.
            //sw.Write("İlk satır");
            //sw.Close();

            //StreamReader sr = new StreamReader("SinanArslan.txt");
            //MessageBox.Show(sr.ReadLine());
            //sr.Close();

        }

        private void btnYaz_Click(object sender, EventArgs e)
        {
            StreamWriter swrd = new StreamWriter("SinanArslan.txt");//bin debug klasorü içine SinanArslan adında metin Belgesi oluşturdu ve yazdı
            swrd.WriteLine(txtYazi.Text);
            swrd.Close();
        }

        private void btnOku_Click(object sender, EventArgs e)
        {
            StreamReader rdr = new StreamReader("SinanArslan.txt");
            rtxtYazi.Text = rdr.ReadLine();
            rdr.Close();
        }

        private void btnEkle_Click(object sender, EventArgs e)
        {
            StreamWriter swrd = new StreamWriter("SinanArslan.txt", true);
            swrd.WriteLine(txtYazi.Text);
            swrd.Close();
        }

        private void btnHepsi_Click(object sender, EventArgs e)
        {
            rtxtYazi.Clear();
            StreamReader rdr = new StreamReader("SinanArslan.txt");
            string okunan = rdr.ReadLine();
            while(okunan != null)
            {
                rtxtYazi.Text += okunan + "\n";
                okunan = rdr.ReadLine();
            }
            //rtxtYazi.Text = rdr.ReadToEnd();
            rdr.Close();
        }
    }
}

Uygulama Indir



                   Arada bir basit düşünmekte lazım umarım sorunuzun cevabını verebilmişimdir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Mssql Indexes Kullanımı Uygulama 2

Hiç yorum yok
Merhaba Arkadaşlar

Bu bölümde mssql tarafındaki indexes yapısına örnek olması açısından ikinci uygulamamı paylaşıyor olacağım.Eğer belli bir süredir blogumu takip ediyorsanız hatırlayacağınız gibi bir video market uygulaması yazmıştık.Şimdi bu video market uygulamamız için indexes kullanımına bakıyor olacağız.

Video Market Uygulaması Veri Tabanı İndirmek için Tıklaynız

--************** İndeksler (Indexes) **********************
use VideoMarket
go
select * from sysindexes

--******************************************
-- create index indextipi indexismi
-- on TabloAdı(KolonAdı)
--******************************************

-- index tipi blirtilmezse SQL non clustered kabul eder.

use VideoMarket
go
sp_helpindex 'Filmler' --index dosyalarını görürüz
create index IX_FilmAd
on Filmler(FilmAd)

select * from Filmler where FilmAd like 'T%'

DBCC SHOWCONTIG (Filmler) -- tüm tablonun performansına bakıyor
DBCC SHOWCONTIG (Filmler,IX_FilmAd) -- leaf(en son aşamadaki elemanların) performansına bakıyor

-- drop index indexismi --> index dosyasını siler

create index IX_Birlesik
on Filmler(FilmAd,Yonetmen)
with(Pad_Index=on, FillFactor =80)


--************ İndexlerin Değiştirilmesi (Bakımı) ***************

-- Rebuild : İndex dosyasını yeniden derler, silip yenisini oluşturur.

-- Reorganize : Yeniden düzenlemek. Fill Factor değerine göre sadece uç(Leaf) seviyedeki index sayfalarını yeniden yapılandırır.

-- Disable : İndex dosyasını kullanıma kapatmak.

-- Filmler tablosundaki tüm indexleri gözden geçiriyor, yeniden derliyor.

alter index all on Filmler
rebuild -- reorganize de kullanılabilir
go

create index IX_FilmAd
on Filmler(FilmAd)
with(drop_existing=on)
go

Uygulama İndir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Mssql T-sql Kodları ile Database İşlemleri

Hiç yorum yok
Merhaba Arkadaşlar

Mssql uygulamalarımızın ikinci bölümünde t-sql kodları ile database oluşturma işlemlerine bakıyor olacağız.Zaman kaybetmeden kodlara geçelim ve yorum satırlarına aldığım notlara bakalım

use master
go
create database Kurslar
go
if exists(select * from sysobjects where name='ogrenciler')
    begin
        DROP Table ogrenciler
    end
create table ogrenciler
(
    ogrencino int not null identity(1,1),
    ogrenciAd varchar(20) not null,
    ogrencisoyad varchar(20) not null,
    telefon varchar(20),
    toplamtutar money,
    sinifno int not null
)
go
alter table ogrenciler
add constraint PK_ogrencino primary key
clustered(ogrencino)
go
if exists(select * from sysobjects where name='ogretmenler')
    begin
        DROP Table ogretmenler
    end
create table ogretmenler
(
    ogretmenno int not null identity(1,1),
    ogretmenAd varchar(20) not null,
    ogretmensoyad varchar(20) not null,
    telefon varchar(20),
    bransno int not null
)
go
alter table ogretmenler
add constraint PK_ogretmenno primary key
clustered(ogretmenno)
go
if exists(select * from sysobjects where name='siniflar')
    begin
        DROP Table siniflar
    end
create table siniflar
(
    sinifno int not null identity(1,1),
    sinifAd varchar(20) not null,
    ogretmenno1 int not null,
    ogretmenno2 int not null,
    mevcut int,
    baslangictarihi date default getdate(),
    bitistarihi date default getdate()
)
go
alter table siniflar
add constraint PK_sinifno primary key
clustered(sinifno)
go
if exists(select * from sysobjects where name='odemeler')
    begin
        DROP Table odemeler
    end
create table odemeler
(
    odemeno int not null identity(1,1),
    tarih date default getdate(),
    ogrencino int not null,
    tutar money,
    taksitsayisi tinyint,
    odendi bit default 0
)
go
alter table odemeler
add constraint PK_odemeno primary key
clustered(odemeno)
go
if exists(select * from sysobjects where name='branslar')
    begin
        DROP Table branslar
    end
create table branslar
(
    bransno int not null identity(1,1),
    bransadi varchar(20)
)
go
alter table branslar
add constraint PK_bransno primary key
clustered(bransno)
go

alter table ogrenciler
add constraint FK_Ogrenci_Sinif
    foreign key (sinifno)
    references siniflar(sinifno) -- ilişkilendirme yapıldı
    go
   
use Kurslar
alter table odemeler  -- odemeler tablosunda;
add constraint ck_taksitkontrol  --ck_taksitkontrol adında constraint oluşturuldu
check(taksitsayisi<=10) -- 10 taksitten fazla yapılmasın!!!

sp_helpconstraint 'odemeler'  -- ödemelerde tanımlanan constraintleri gösterir

-- rule oluşturma
create rule rl_mevcut -- ayrı bir nesne olduğundan create ile oluşturulur.
as @sayisi<=20        -- değişken kullanılır.

-- drop rule rl_mevcut ile rule yi silebiliriz

sp_bindrule rl_mevcut,'siniflar.mevcut' -- tablonun kullanılacak kolonuna rule bağlandı
sp_helpconstraint 'siniflar'

-- ödemelerin kısıtlarını geçici olarak kaldır
alter table odemeler  
NOCHECK constraint all

-- odemelerin kısıtlarını geri al
alter table odemeler
check constraint all

Örnek uygulama Indir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Mssql Alt Sorgu Kullanımı Group By ve Order By Kullanımı

Hiç yorum yok
Merhaba Arkadaşlar

Bu bölümde örnek t-sql sorgularına bakıyor olacağız.Yazacağımız uygulamada norhwind veri tabanından ve ekte paylaşılan veri tabanları üzerinden işlemler yapıp t-sql kodları ile veri tabanı üzerinde database oluşturma ,var olan bir veri tabanına index atama işlemlerine bakıyor olacağız.

İlk bölümüzde de  Alt sorgular ve Group by ve order by kullanımına değiniyor olacağız

Şimdi uygulamamızda kullandığımız t-sql sorgularına bakalım

--* Alt Sorgular*--

-- Örnek 1) Müşterilerin ilk gerçekleştirği sipariş tarihi

Select CompanyName,(Select Min(OrderDate) from Orders siparis Where siparis.CustomerID=musteri.CustomerID ) as İlkSiparis from Customers musteri

-- Örnek 2) 1997 yılında yapılan Siparisler

Select * from Orders where YEAR(OrderDate)=1997

--Örnek 3) Siparişler tablosunda en küçük sipariş tarihi gelsin

Select Min(Year(OrderDate)) as İlkSiparisYili from Orders

--Örnek 4) Alt sorgu halinde Siparişler tablosunda yapılan ilk siparis tarihi

Select * from Orders where Year(OrderDate)=(Select Min(Year(OrderDate)) as İlkSiparisYili from Orders)

--Örnek 5) Siparis adeti 4 den fazla olan Şirketler gelsin

Select CompanyName,CustomerID from Customers as musteri
where 4 < (Select Count(*) from Orders as siparis where musteri.CustomerID=siparis.CustomerID)

--Örnek 6) Ürünler tablosunda ne kadar ürün var

Select Sum(UnitsInStock) as toplamÜrünSayısı from Products

--Örnek 7) Hangi üründen Kaç birim Stock var

Select ProductName, Sum(UnitsInStock) from Products group by ProductName

--Örnek 8) Hangi Kategoriden kaç birim ürün var

Select CategoryName as KategoriAdi,Sum(urun.UnitsInStock) as UrunSayisi from Products as urun inner join Categories as kategori on urun.CategoryID=kategori.CategoryID
group by CategoryName

--Örnek 9) Hangi kategoriden ve hangi tedarikciden tedarik ettiği kaç birim ürün var

Select kategori.CategoryName As KategoriAdi,tedarikci.CompanyName as Tedarikci,SUM(UnitsInStock) as ToplamSayı from Products as urun inner join Categories as kategori
on urun.CategoryID=kategori.CategoryID inner join Suppliers as tedarikci on urun.SupplierID=tedarikci.SupplierID
group by kategori.CategoryName,tedarikci.CompanyName
order by ToplamSayı desc

--Örnek 10) Kac farklı ülkeye satış yapılmış

Select distinct ShipCountry  from Orders

--yada

Select ShipCountry from Orders group by ShipCountry

--Örnek 11) Hangi Ülkeye Kaç tane sipariş yapıldı

Select ShipCountry ,count(OrderID) as Satıssayısı  from Orders group by ShipCountry

--Örnek 12) 1996 yılında hangi ülkeye kaçtane sipariş gitmiş

Select ShipCountry,YEAR(OrderDate) as Yil,Count(OrderID) as GidenSiparis from Orders Where YEAR(OrderDate)=1996 group by ShipCountry,
YEAR(OrderDate)

--Örnek 13) 1996 yılında hangi ülkeye kaçtane sipariş gitmiş ve siparis sayısı 15 den büyük olan kayıtlar gelsin

Select ShipCountry,YEAR(OrderDate) as Yil,Count(OrderID) as GidenSiparis from Orders Where YEAR(OrderDate)=1996 group by ShipCountry,
YEAR(OrderDate) having 15<Count(OrderID)

--Örnek 14) Ülkelere giden kargoların ülke bazında ortalama taşıma ücretini  çokdan aza sıralayınız

Select ShipCountry, AVG(Freight) as [Ortalama Taşıma Ücreti] from Orders
group by ShipCountry
order by 2 desc --ikinci sıradaki kolana göre sıraldık yani [Ortalama Taşıma Ücreti]

--Örnek 15) Çalışanların ünvanlarının sayısı

Select TitleOfCourtesy,Count(TitleOfCourtesy) as Unvan from Employees
group by TitleOfCourtesy
order by 2 desc-- ünvanlarının

--Örnek 16) En yüksek ortalama uçuş fiyatı hangi ülkeye gitmiştir

Select top 1 ShipCountry,Avg(Freight) as [Yapılan Masraf] from Orders
group by ShipCountry
order by Avg(Freight)

--Örnek 17) Şimdiye kadar satılan ürünlerden nekadar hasılat elde ettik

select urun.ProductName,Sum(siparisdetay.UnitPrice*siparisdetay.Quantity*(1-siparisdetay.Discount)) as [Ara Toplam]  from [Order Details] as siparisdetay
inner join Products as urun on siparisdetay.ProductID=urun.ProductID
 group by urun.ProductName

Video Anlatım :




Uygulama Indir 

Linq Expressions Örnekleri

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.

Linq Expression Join İşlemleri Group By ve Order By Kullanımı

Hiç yorum yok
Merhaba Arkadaşlar

Bu bölümde linq expression larda join işlemi kullanımına bakıyor olacağız.Yazağımız uygulama genel anlamda çoklu tablolar arasındaki ilişkilerden yararlanıp bunları linq ile tek sorgu haline getirip  datagridviewımızda listelemek olacak.

Yazmış olduğum proje üzerinden devam ederek kodları ve uygulamayı paylaşıyor olacağım. Veri Tabanı olarak KuzeyYelini kullanarak ilerledim.Uygulama içine Model adında bir klasör açıp add new item ile linq to sql classes ekleyip devam edelim ve global olarak eklemiş olduğumuz context nesnemizden instance alıp devam edelim

KuzeyYeliDataContext db = new KuzeyYeliDataContext();
    private void btnCoklu_Click(object sender, EventArgs e)
        {
            // Önemli Not join işlemlerinde ilk olarak ilk çağırılan tablonun kolonu ile eşleştirme yapılır
            lblSorgu.Text = "";
            lblSorgu.Text = "Satışı yapılan ürünü hangi personel satmış ad ve soyadı,hangi Musteri ye satmış,satış fiyatı,urun adi,kategori adı,indirim oranı gelsin";
            dgvSonuc.DataSource = from urun in db.Products
                                  join kat in db.Categories on urun.CategoryID equals kat.CategoryID
                                  join satisdetay in db.Order_Details on urun.ProductID equals satisdetay.ProductID
                                  join satis in db.Orders on satisdetay.OrderID equals satis.OrderID
                                  join musteri in db.Customers on satis.CustomerID equals musteri.CustomerID
                                  join personel in db.Employees on satis.EmployeeID equals personel.EmployeeID
                                  join teadrikci in db.Suppliers on urun.SupplierID equals teadrikci.SupplierID
                                  select new
                                  {
                                      UrunAdi = urun.ProductName,
                                      Fiyat = urun.UnitPrice,
                                      SatisFiyat = satisdetay.UnitPrice,
                                      Adet = satisdetay.Quantity,
                                      Indirim = satisdetay.Discount,
                                      Tedarikci = teadrikci.CompanyName,
                                      KategoriAd = kat.CategoryName,
                                      Musteri = musteri.CompanyName,
                                      Personel = personel.FirstName + "- " + personel.LastName,



                                  };
        }

 private void btniki_Click(object sender, EventArgs e)
        {
            /*Urunler tabloasundaki kategorileri aynı olan ürünler gelsin*/
            lblSorgu.Text = "";
            lblSorgu.Text = "Urunler tabloasundaki kategorileri aynı olan ürünler gelsin";
            dgvSonuc.DataSource = from urun in db.Products
                                  join kat in db.Categories on urun.CategoryID equals kat.CategoryID
                                  select new
                                  {
                                      urun.ProductName,
                                      kat.CategoryName,
                                      urun.UnitsInStock,
                                      urun.UnitPrice
                                  };
        }


lblSorgu.Text = "";
            /*hangi üründen Nekadar toplam Satış geliri elde edilmiş*/
            lblSorgu.Text = "hangi üründen Nekadar toplam Satış geliri elde edilmiş";
            var sorgu = from urun in db.Products
                        join satisdetay in db.Order_Details on urun.ProductID equals satisdetay.ProductID
                        group satisdetay by urun.ProductName into grup //ürünler tablosundaki urunadina  göre grupla
                        select new
                        {
                            UrunAdi = grup.Key, //grupladığımız alan adını key ifade eder
                            ToplamSatis = grup.Sum(x => x.UnitPrice * x.Quantity)
                        };
            dgvSonuc.DataSource = sorgu;

            /*yapılan işlemin t-sql sorgusu
             Select ProductName,Sum(satisdetay.Quantity*satisdetay.UnitPrice) as ToplamSatis from Products urun
join [Order Details] satisdetay on urun.ProductID=satisdetay.ProductID
group by urun.ProductName
            
             ======!!!!!!!!Önemli!!!=======
             Yukarda dikkat edilmesi gereken group by urun.ProductName ifadesi t-sql sorgusunda Select deyiminden hemen sonra ProductName gelmektedir.Yani bizim yazdığımız linq expressionlarda group by ifadesindeki Key 'i ifade etmektedir
             */

 private void btnOrderBy_Click(object sender, EventArgs e)
        {
            lblSorgu.Text = "";
            lblSorgu.Text = "Fiayata Az' dan Çoğa Göre Ürunleri Sırala";
            var sorgu = from urun in db.Products
                        orderby urun.UnitPrice
                        select urun;
            dgvSonuc.DataSource = sorgu;
        }


 private void button2_Click(object sender, EventArgs e)
        {
            lblSorgu.Text = "";
            lblSorgu.Text = "Fiayata Çoktan Az'a Göre Ürunleri Sırala";
            var sorgu = from urun in db.Products
                        join kategori in db.Categories on urun.CategoryID equals kategori.CategoryID
                        join tedarikci in db.Suppliers on urun.SupplierID equals tedarikci.SupplierID
                        orderby urun.UnitPrice descending
                        select new
                        {
                            urun.ProductName,
                            KategoriAdi = kategori.CategoryName,
                            Tedarikci = tedarikci.CompanyName,
                            UrunFiyat = urun.UnitPrice,
                            Adet = urun.UnitsInStock,
                        };
            dgvSonuc.DataSource = sorgu;
        }


 private void button3_Click(object sender, EventArgs e)
        {
            //burda istenilen alanları çekmek için tablolar arası join işlemlerinden sonra select keyword unden scopelarında ilgili alanları çekebilirsiniz.
            //Ben yukarda benzer örneği yaptığım için bu kısmı yazmadım
            lblSorgu.Text = "";
            lblSorgu.Text = "Satış Tarihine Göre Satışları Tersten Sırala ";
            var sorgu = from satis in db.Orders
                        orderby satis.OrderDate descending
                        select satis;
            dgvSonuc.DataSource = sorgu;
        }

        private void button4_Click(object sender, EventArgs e)
        {
            lblSorgu.Text = "";
            lblSorgu.Text = "Verilen Tarihe Göre Dataları Sırala  ";

            DateTime tarih = Convert.ToDateTime(maskedTextBox1.Text);

            var sorgu = from satis in db.Orders
                        where satis.OrderDate == tarih
                        select satis;
            dgvSonuc.DataSource = sorgu;
        }


Umarım faydalı olur.Örnek Proje İndir

Hiç yorum yok :

Yorum Gönder

Soru Görüş önerileriniz için gmail plus üzerinden + layın müsait olduğumda mutlaka yanıt dönüyor olacağım.