Classları iç içe ilişki kurarak çağırma yöntemine inner type diyoruz. Örnek kodlarmız:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NetFrameWork.S11.D1.InnerTypeModelleme { public class MusteriSiparisBilgisi { public string siparisNumarasi { get; set; } public void MusteriSiparisBilgisiTestMetot() { Console.WriteLine("Sipariş Bilgisi Test Metodu"); } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NetFrameWork.S11.D1.InnerTypeModelleme { public class MusteriIletisimBilgisi { public int iletisimTip { get; set; } // 7001 mobil - 7002 sabit hat public string alankodu { get; set; } public string numara { get; set; } public bool aktifPasif { get; set; } public void MusteriIletisimBilgisiTestMetot() { Console.WriteLine("Müşteri İletişim Bilgisi Test"); } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NetFrameWork.S11.D1.InnerTypeModelleme { public class MusteriAdres { public string adresTip { get; set; } public string Il { get; set; } public string Ilce { get; set; } public string Adres { get; set; } public void MusteriAdresTestMetot() { Console.WriteLine("Müşteri Adres Test Metodu"); } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NetFrameWork.S11.D1.InnerTypeModelleme { public class Musteri { #region Tekil olarak kullanilan field public int musteriID { get; set; } public string tcKimliknumarasi { get; set; } public string isim { get; set; } public string soyisim { get; set; } public DateTime olusturmaTarih { get; set; } public int kullaniciID { get; set; } #endregion #region Inner Type gerektiren fieldlar public MusteriAdres[] musteriAdresListe; public MusteriIletisimBilgisi[] musteriIletisimBilgileri; public MusteriSiparisBilgisi[] musteriSiparisBilgileri; #endregion public Musteri() { musteriAdresListe = new MusteriAdres[5]; musteriIletisimBilgileri = new MusteriIletisimBilgisi[3]; musteriSiparisBilgileri = new MusteriSiparisBilgisi[10]; } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NetFrameWork.S11.D1.InnerTypeModelleme { class Program { static void Main(string[] args) { Musteri m1 = new Musteri(); m1.musteriID = 1; m1.tcKimliknumarasi = "15515515155"; m1.isim = "Ahmet"; m1.soyisim = "Kayan"; m1.olusturmaTarih = DateTime.Now; //m1.musteriAdresListe = new MusteriAdres[5]; böyle de örneklenebilir. Önerilmez. Musteri nesnesinin yapıcı metodunda bunu yap! m1.musteriAdresListe[0] = new MusteriAdres() { Il = "Istanbul", Ilce="Bahçelievler", Adres="Adres..", adresTip="Ofis" }; m1.musteriIletisimBilgileri[0] = new MusteriIletisimBilgisi(); m1.musteriSiparisBilgileri[0] = new MusteriSiparisBilgisi(); m1.musteriAdresListe[0].MusteriAdresTestMetot(); m1.musteriIletisimBilgileri[0].MusteriIletisimBilgisiTestMetot(); m1.musteriSiparisBilgileri[0].MusteriSiparisBilgisiTestMetot(); // Görüldüğü gibi Musteri.cs dosyamızda yani Musteri classımızda newlenmiş olan MusteriAdres, MusteriIletisimBilgisi, MusteriSiparisBilgisi classlarına ait verilere musteri nesnesi üzerinden ulaşabiliyoruz. Console.ReadLine(); } } }
Bir cevap yazın