Kullanıcı Adı:    Şifre:      Her ziyaretimde otomatik giriş yap       GirişGiriş   

Ana Sayfa
Ana Sayfa
Bilişim Teknolojileri Son Konular
Son Konular
Kayıt Olun
Kayıt Olun
İletişim
İletişim

 Filistin'e Yardım Etmek İçin Lütfen Tıklayınız ..! 

Bu Bir Savaş Değil.. İsrail Terörü..!

  Bilgisayarbilisim.NET | Bilişim Teknolojileri | Bilgisayar Öğretmenleri | Okul Formatör | Eğitici Formatör | Yıllık ve Günlük Plan | Görsel Anlatımlar | Etkinlikler | Forum
   Eğitici Formatör Öğretmen

             B.B.F.Ş. - LinQ Uygulamaları - 7

Yeni başlık gönder   Başlığa cevap gönder 1. sayfa (Toplam 1 sayfa)
YazarMesaj
togius
Aktif Üye
Aktif Üye



Kayıt: 27 Tem 2007
Mesajlar: 243

B.B.F.Ş. - LinQ Uygulamaları - 7    15 Eyl 2008, 11:55Alıntıyla Cevap Gönder

Bırakın Bu Fani Şeyleri ....

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

namespace Linq_Temel_Sorgulama
{
public class Kisi
{
private int KisiID;
private string Ad;
private string Soyad;

public int kisiID
{
get { return KisiID; }
set { KisiID = value; }
}
public string ad
{
get { return Ad; }
set { Ad = value; }
}
public string soyad
{
get { return Soyad; }
set { Soyad = value; }
}
public Kisi(int KisiID, string Ad, string Soyad)
{
//Değerler özelliklere gönderiliyor
this.kisiID = KisiID;
this.ad = Ad;
this.soyad = Soyad;
}
}

public class Telefon
{
private int telefonID;
private int kisiID;
private string alanKodu;
private string telefonNo;
private TelefonTipleri tip;

public int TelefonID {
get { return telefonID; }
set { telefonID = value; }
}
public int KisiID {
get { return kisiID; }
set { kisiID = value; }
}
public string AlanKodu {
get { return alanKodu; }
set { alanKodu = value; }
}
public string TelefonNo {
get { return telefonNo; }
set { telefonNo = value; }
}
public TelefonTipleri Tip {
get { return tip; }
set { tip = value; }
}
public Telefon(int telefonID, int kisiID, string alanKodu, string telefonNo, TelefonTipleri tip)
{
this.TelefonID = telefonID;
this.KisiID = kisiID;
this.AlanKodu = alanKodu;
this.TelefonNo = telefonNo;
this.Tip = tip;
}
}
//Telefon Tiplerinini Ayarlıyoruz.
public enum TelefonTipleri
{
Ev,
Is,
Cep,
Yazlik
}


class Program
{
static void Main(string[] args)
{
#region
List<Kisi> kisiler = new List<Kisi>();
kisiler.Add(new Kisi(1,"Tolga","ŞAHİN"));
kisiler.Add(new Kisi(2,"Zübeyde","ŞAHİN"));
kisiler.Add(new Kisi(3,"Mehmet Ege","ŞAHİN"));
kisiler.Add(new Kisi(4,"Elif Helin","ŞAHİN"));
#endregion

#region
List<Telefon> telefonlar = new List<Telefon>();
telefonlar.Add(new Telefon(1, 1, "266", "4561200", TelefonTipleri.Is));
telefonlar.Add(new Telefon(2,1,"266","2246779",TelefonTipleri.Ev));
telefonlar.Add(new Telefon(3,2,"505","5673211",TelefonTipleri.Cep));
telefonlar.Add(new Telefon(4, 1, "505", "5561200", TelefonTipleri.Cep));
telefonlar.Add(new Telefon(5, 3, "266", "1246779", TelefonTipleri.Ev));
telefonlar.Add(new Telefon(6, 3, "505", "4673211", TelefonTipleri.Cep));
telefonlar.Add(new Telefon(7, 4, "505", "2673211", TelefonTipleri.Cep));
#endregion

//Tüm Kişi Listesini Ekrana Linq ile yazıdırıcaz
Console.WriteLine("--------Tüm Kişileri Gösterir------\n");
var snc = from k in kisiler
select k;
foreach (var obj in snc)
{
string str = "";
str = "Kişi Numarası = " + obj.kisiID + ", ";
str += "Kişi Adı = " + obj.ad + ", ";
str += "Kişi Soyadı = " + obj.soyad + ", ";
Console.WriteLine(str);
}

Console.WriteLine("-----İlk N kaydı Getirir--------\n");
//Şimdi isterseniz ilk 2 kişiyi sorgumuzda getirelim
var sncSecilen = (from k in kisiler
select k).Take(2);
foreach (var obj in sncSecilen)
{
string str = "";
str = "Kişi Numarası = " + obj.kisiID + ", ";
str += "Kişi Adı = " + obj.ad + ", ";
str += "Kişi Soyadı = " + obj.soyad + ", ";
Console.WriteLine(str);
}
Console.WriteLine("-------Belirtilen Kayıtlar Arasını Getirir------\n");
//Kişilerden 2 ile 3 ü getiren sorgu
var sncSecilen2 = (from k in kisiler
select k).Skip(1).Take(2);
foreach (var obj in sncSecilen2)
{
string str = "";
str = "Kişi Numarası = " + obj.kisiID + ", ";
str += "Kişi Adı = " + obj.ad + ", ";
str += "Kişi Soyadı = " + obj.soyad + ", ";
Console.WriteLine(str);
}
Console.WriteLine("------n. Kaydı Getirir------\n");
//Kişilerden sadece 3. sırayı getiren sorugu
var sncSecilen3 = (from k in kisiler
select k).Skip(1).First();

string strTek = "";
strTek = "Kişi Numarası = " + sncSecilen3.kisiID + ", ";
strTek += "Kişi Adı = " + sncSecilen3.ad + ", ";
strTek += "Kişi Soyadı = " + sncSecilen3.soyad + ", ";
Console.WriteLine(strTek);

//şimdi isterseniz Anonymous Type Özelliklerine Bakalım
Console.WriteLine("------Kayıtları Birleştir------\n");
var sncSecilen4 = from k in kisiler
select new { tamAd = k.ad + " " + k.soyad };
foreach (var obj in sncSecilen4)
Console.WriteLine("Kişi = {0}", obj.tamAd);

//LinQ da kayıtları gruplamak için ise ( tüm Kişileri soyadlarının
// baş harfine göre gruplucaz)
Console.WriteLine("------Kayıtları Gruplamak İçin------\n");
var sncSecilen5 = from k in kisiler
group k by k.soyad[0] into yeniData
select new
{
BasHarf=yeniData.Key,
Tekrar=yeniData.Count()
};

foreach (var obj in sncSecilen5)
Console.WriteLine(obj.BasHarf + " " + obj.Tekrar);

//şimdi LinQ kullanarak iki tabloyu birleştireceğiz.
Console.WriteLine("------Tabloları Birleştiriyoruz------\n");
var sncSecilen6 = from t in telefonlar
join k in kisiler
on t.KisiID equals k.kisiID
select new
{
tamAd = k.ad + " " + k.soyad,
telefonNo = t.TelefonNo,
tipi = t.Tip
};
foreach (var obj in sncSecilen6)
Console.WriteLine(obj.tamAd + "\t\t" + obj.telefonNo + "\t\t" + obj.tipi);


//yine bir tablo birleştirme örneği göreceğiz
// telefonları olmayanları yok dicek.
Console.WriteLine("------Tabloları Birleştiriyoruz2------\n");
var sncSecilen7 = from k in kisiler
join t in telefonlar
on k.kisiID equals t.KisiID
into denemeTablosu
from t in denemeTablosu.DefaultIfEmpty()
select new
{
tamAd = k.ad + " " + k.soyad,
telefonNo = (t.TelefonNo == null) ? "yok" : (t.AlanKodu + "-" + t.TelefonNo),
tipi = (t.Tip == null) ? "" : t.Tip.ToString()
};
foreach (var obj in sncSecilen7)
Console.WriteLine(obj.tamAd + "\t\t" + obj.telefonNo + "\t\t" + obj.tipi);

//Kişinin kaç tane telefonu olduğunu gösteren sorgu
//kullanılan yapılar select, from, Anonymous Type, left outer join, group ... by
var sncSecilen8 = from k in kisiler
join t in telefonlar
on k.kisiID equals t.KisiID
into denemeTablosu
from t in denemeTablosu.DefaultIfEmpty()
group t by new
{
tamAd = k.ad + " " + k.soyad,
kisiID = (t.KisiID == null) ? 0 : t.KisiID
} into yeniData
select new
{
tamAd = yeniData.Key.tamAd,
telefonSayisi = (yeniData.Key.kisiID == 0) ? "0" : yeniData.Count().ToString()
};
foreach (var obj in sncSecilen8)
Console.WriteLine(obj.tamAd + "\t\t" + obj.telefonSayisi);


}
}
}
Yeni başlık gönder   Başlığa cevap gönder1. sayfa (Toplam 1 sayfa)

  Bilgisayarbilisim.NET | Bilişim Teknolojileri | Bilgisayar Öğretmenleri | Okul Formatör | Eğitici Formatör | Yıllık ve Günlük Plan | Görsel Anlatımlar | Etkinlikler | Forum
   Eğitici Formatör Öğretmen

             B.B.F.Ş. - LinQ Uygulamaları - 7


 




page generation = 4.80990 seconds, sql queries = 14

Bilgisayarbilisim.NET forumlarında yasal olmayan programların paylaşılması yasaktır. Yasal olmayan linkler ve mesajlar uyarılmaksızın silinecektir.
Yasal olmayan programlar yada linkler tarafımızdan görülmeyebilir, ismi verilen dosyaların sorumlulukları kaynaklarına aittir. Hak sahibinin talebi durumunda derhal sitemizden kaldırılacaktır.
Sitede verilen linklerin yasalara aykırı kullanımı karşısında oluşabilecek hiçbir sorundan sitemiz sorumlu değildir.

phpBB-alexa-Pc Rehberi

Bilişim Teknolojileri E_OKUL Eğitici Formatör Öğretmen iyinet webmaster forumu 2008 seo yarışması Kritik IE7 güvenlik yaması (KB960714)