15.11.2011
öğrenci değerlendirme(proje geliştirme)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
public partial class ogretmen_degerlendirme : System.Web.UI.Page
{
vbbaglanti system = new vbbaglanti();
SqlConnection baglanti;
SqlCommand komut;
SqlDataReader oku;
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)//test tablosuna bağlanıp birden fazla olan testleri ekrana datalistle gösterimi
{
baglanti = system.baglan();
komut = new SqlCommand("select * from test",baglanti);
oku = komut.ExecuteReader();
DataList1.DataSource = oku;
DataList1.DataBind();
oku.Close();
komut.Dispose();
baglanti.Close();
}
}
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
Label lblogr = (Label)e.Item.FindControl("lblogr");//datalistin içindeki labelları tanımlanması
Label lbltest = (Label)e.Item.FindControl("lbltest");
Label lblevet = (Label)e.Item.FindControl("lblevet");
Label lblhayir = (Label)e.Item.FindControl("lblhayir");
string ogr_id = Request.QueryString["ogr_id"].ToString();
SqlCommand komut2 = new SqlCommand("select count(*) as toplam_sayi from degerlendirme where ogr_id=" + Convert.ToInt32(ogr_id) + " and test="+Convert.ToInt32(lbltest.Text)+"", baglanti);//tek test ve öğrenciye göre değerlendirme tablsundan süzme yapılarak öğrenci sayısı öğrenilir
SqlDataReader oku2= komut2.ExecuteReader();
oku2.Read();
double toplam = Convert.ToDouble(oku2["toplam_sayi"].ToString());
oku2.Close();
komut2.Dispose();
komut2 = new SqlCommand("select count(*) as evet from degerlendirme where yanit='E' and ogr_id=" + Convert.ToInt32(ogr_id) + " and test=" + Convert.ToInt32(lbltest.Text) + "", baglanti);//yukarıda ki süzme işlemlerinin aynısı ama ek olrak doğru yaptıklarını çekiyoruz
oku2 = komut2.ExecuteReader();
oku2.Read();
double tevet = Convert.ToDouble(oku2["evet"].ToString());
oku2.Close();
komut2.Dispose();
double yevet = (100 * tevet) / toplam;//doğru yaptıklarının yüzdesini hesaplıyoruz
double yhayir = 100 - yevet;//yanlış yaptıklarının yüzdesini buradan hesaplıyoruz
lblevet.Text = Convert.ToString(Math.Round(yevet,2));//virgülden sonraya yuvarlama yapılıyoruz
lblhayir.Text = Convert.ToString(Math.Round(yhayir, 2));
komut2 = new SqlCommand("select * from ogrenci where ogr_id="+Convert.ToInt32(ogr_id)+"",baglanti);//öğrencinin adını ve soyadını ogrenci tablosundan çekiyoruz
oku2 = komut2.ExecuteReader();
oku2.Read();
lblogr.Text=oku2["ogr_ad_soyad"].ToString();
oku2.Close();
komut2.Dispose();
komut2 = new SqlCommand("select * from test where test_id=" + Convert.ToInt32(lbltest.Text) + "", baglanti);//testin adını öğreniyoruz
oku2 = komut2.ExecuteReader();
oku2.Read();
lbltest.Text = oku2["test_adi"].ToString();
oku2.Close();
komut2.Dispose();
}
}
Kaydol:
Kayıt Yorumları (Atom)
Hiç yorum yok:
Yorum Gönder