public async Task <ActionResult> Index(IstatistikModel istatistikModel)
        {
            var currentUsername = HttpContext.Session.GetString("username");


            return(RedirectToAction("CozulmusTest", "Istatistik", istatistikModel));
        }
        public async Task <ActionResult> CozulmusTest(IstatistikModel istatistikModel)
        {
            var currentUsername = HttpContext.Session.GetString("username");

            ViewData["username"] = currentUsername;

            var deneme = _context.CozulenTest.Where(c => c.testId == istatistikModel.testId).FirstOrDefault();
            var soru   = await _context.Sorular.Where(s => s.testId == istatistikModel.testId).ToListAsync();

            CozunlenTestSoruModel cozunlenTestSoruModel = new CozunlenTestSoruModel
            {
                SoruModels      = soru,
                SecilenCevaplar = deneme.secilenCevaplar,
                Kankalik        = istatistikModel.Kankalik,
                Cozen           = deneme.cozen,
                TestAdi         = istatistikModel.testAdi
            };

            if (istatistikModel.cozulen != currentUsername)
            {
                return(RedirectToAction("Error", "Error", new { hata = "Bu Sayfaya Girebilmek İçin Yetkniz Bulunmamaktadır" }));
            }


            return(View(cozunlenTestSoruModel));
        }
Example #3
0
        public async Task <ActionResult> TestCoz(List <SoruModel> soru)
        {
            int    _dogruSayisi    = 0;
            var    currentUsername = HttpContext.Session.GetString("username");
            string UUID            = "anonim" + System.Guid.NewGuid();


            var soruModels = await _context.Sorular.Where(s => s.testId == soru[0].testId).ToListAsync();

            var testModels = await _context.Testler.Where(t => t.TestId == soru[0].testId).ToListAsync();

            string[] secilen = new String[soruModels.Count];
            for (int i = 0; i < soru.Count; i++)
            {
                if (soru[i].dogruCevap == soruModels[i].dogruCevap)
                {
                    _dogruSayisi++;
                }
                secilen[i] = soru[i].dogruCevap.ToString();
            }
            string result = string.Join("", secilen);

            CozulenTestModel cozulenTestModel = new CozulenTestModel();

            cozulenTestModel.testId          = soruModels[0].testId;
            cozulenTestModel.secilenCevaplar = result;
            int             _yanlisSayisi = soru.Count - _dogruSayisi;
            IstatistikModel istatistik    = new IstatistikModel
            {
                testAdi      = testModels[0].TestAdi,
                YanlisSayisi = _yanlisSayisi,
                testId       = testModels[0].TestId,
                DogruSayisi  = _dogruSayisi,
                cozulen      = testModels[0].TestSahibi,
                Kankalik     = KankalikHesapla(soru.Count, _dogruSayisi)
            };

            if (currentUsername.IsNullOrEmpty())
            {
                cozulenTestModel.cozen = UUID;
                istatistik.cozen       = UUID;
            }

            else
            {
                cozulenTestModel.cozen = currentUsername;
                istatistik.cozen       = currentUsername;
            }
            _context.CozulenTest.Add(cozulenTestModel);
            _context.Istatistik.Add(istatistik);
            _context.SaveChanges();
            HttpContext.Session.SetString("uuid", UUID);
            HttpContext.Session.SetString("testadi", istatistik.testAdi);

            if (currentUsername.IsNullOrEmpty())
            {
                return(RedirectToAction("AnonymusRegister", "Register"));
            }
            return(RedirectToAction("GetTest", "Test"));
        }