public static void OgrenciEkle(Ogrenci ogrenci, OgrenciBilgileri ogrenciBilgileri)
        {
            OgrenciConcrete          ogrenciConcrete          = new OgrenciConcrete();
            OgrenciBilgileriConcrete ogrenciBilgileriConcrete = new OgrenciBilgileriConcrete();
            var roleStore   = new RoleStore <IdentityRole>(ogrenciConcrete._dbContext);
            var roleManager = new RoleManager <IdentityRole>(roleStore);
            var userStore   = new UserStore <Kullanici>(ogrenciConcrete._dbContext);
            var userManager = new UserManager <Kullanici>(userStore);
            var kullanici   = userManager.FindByName((ogrenci.OgrenciAdi.ToLower() + ogrenci.OgrenciSoyadi.ToLower()));

            if (kullanici == null)
            {
                kullanici = new Kullanici()
                {
                    UserName = ogrenci.OgrenciAdi.ToLower() + ogrenci.OgrenciSoyadi.ToLower(),
                    Email    = ogrenci.OgrenciAdi.ToLower() + ogrenci.OgrenciSoyadi.ToLower() + "@uni.edu.tr"
                };
            }
            else
            {
                int sayi = 0;
                while (kullanici != null)
                {
                    sayi++;
                    kullanici = userManager.FindByName((ogrenci.OgrenciAdi.ToLower() + ogrenci.OgrenciSoyadi.ToLower() + sayi));
                }
                kullanici = new Kullanici()
                {
                    UserName = ogrenci.OgrenciAdi.ToLower() + ogrenci.OgrenciSoyadi.ToLower() + sayi,
                    Email    = ogrenci.OgrenciAdi.ToLower() + ogrenci.OgrenciSoyadi.ToLower() + sayi + "@uni.edu.tr"
                };
            }
            //Yapicalak: Sifre kisminda TC Ogrenci kismina alinacak, asagidaki ornek gibi sifre girisi yapilacak.
            //Muhammed Talha Balci
            //Mb123717238192739.
            string sifre  = ogrenci.OgrenciAdi.Substring(0, 1).ToUpper() + ogrenci.OgrenciAdi.Substring(1) + ogrenci.KayitTarihi.Date.Year + ".";
            var    result = userManager.Create(kullanici, sifre);

            if (result.Succeeded)
            {
                userManager.AddToRole(kullanici.Id, "ogrenci");
            }
            ogrenci.OgrenciID            = kullanici.Id;
            ogrenciBilgileri.OgrenciID   = ogrenci.OgrenciID;
            ogrenciBilgileri.OgrenciMail = kullanici.Email;
            ogrenciConcrete._ogrenciRepository.Insert(ogrenci);
            ogrenciConcrete._ogrenciUnitOfWork.SaveChanges();
            ogrenciConcrete._ogrenciUnitOfWork.Dispose();
            ogrenciBilgileriConcrete._ogrenciBilgileriRepository.Insert(ogrenciBilgileri);
            ogrenciBilgileriConcrete._ogrenciBilgileriUnitOfWork.SaveChanges();
            ogrenciBilgileriConcrete._ogrenciBilgileriUnitOfWork.Dispose();
        }
Exemplo n.º 2
0
 public OgrenciController()
 {
     ogrenciConcrete          = new OgrenciConcrete();
     ogrenciBilgileriConcrete = new OgrenciBilgileriConcrete();
     fakulteBolumlerConcrete  = new FakulteBolumlerConcrete();
 }