- Mesajlar
- 1,738
Sınıflarımız aşağıdaki gibi olduğunu düşünelim.
Bu sınıfları birbirleriyle ilişkilendirebilir ve gelen yapıları sql deki inner join benzeri hızlı bir şekilde birleştirebiliriz. Linq bize join ile güzel bir yöntem sunuyor.
Herhangi bir data kontrolüne bunu bağlamamızda sorun değil gayet basit.
İnşallah işinize yarar.
Kod:
public class Personeller
{
public int PersonelId { get; set; }
public string AdSoyad { get; set; }
public string CepTel { get; set; }
public string Email { get; set; }
public int KurumdakiGorevId { get; set; }
public int KurumId { get; set; }
public int KidemYili { get; set; }
public string Sifre { get; set; }
}
public class Kurumlar
{
public int KurumId { get; set; }
public string Kurum { get; set; }
}
public class KurumGorevleri
{
public int GorevId { get; set; }
public string Gorev { get; set; }
}
Bu sınıfları birbirleriyle ilişkilendirebilir ve gelen yapıları sql deki inner join benzeri hızlı bir şekilde birleştirebiliriz. Linq bize join ile güzel bir yöntem sunuyor.
Kod:
List<KurumGorevleri> KurumGorevleriListesi = veritabani_islemleri.SelectKurumGorevleri(-1);
List<Kurumlar> KurumListesi = veritabani_islemleri.SelectKurumlar(-1);
List<Personeller> PersonelListesi = veritabani_islemleri.SelectPersoneller(-1);
var veriler = from p in PersonelListesi
join kl in KurumListesi on p.KurumId equals kl.KurumId
join kg in KurumGorevleriListesi on p.KurumdakiGorevId equals kg.GorevId
select new
{
PersonelId = p.PersonelId,
AdSoyad = p.AdSoyad,
CepTel = p.CepTel,
Email = p.Email,
KurumdakiGorevId = p.KurumdakiGorevId,
KurumId = p.KurumId,
KidemYili = p.KidemYili,
Sifre = p.Sifre,
Kurum = kl.Kurum,
Gorev = kg.Gorev
};
Herhangi bir data kontrolüne bunu bağlamamızda sorun değil gayet basit.
Kod:
Gridview1.DataSource = veriler;
Gridview1.DataBind();
İnşallah işinize yarar.