Hocam kodu değiştirdim dediğiniz mantıkta yaptım ama sorunum su dataadapterıda kapatmamı ıstıyor kapatıyorum con.close ile tekaradan sorgu yazıcagımda con.open diyorum
Bağlantı kapatılmadı. Bağlantının geçerli durumu: açık.
böyle bir hata alıyorum
string query = String.Format("SELECT Personnel.ID," +
"Person.Name,Personnel.TitleID,Personnel.Research," +
"Person.Email,Personnel.OfficeRoomLocation," +
"Personnel.OfficePhoneNo,Person.Photo,Personnel.PositionID FROM Personnel,Person where Personnel.PersonID=Person.ID AND Personnel.Type=1 ;");
SqlDataAdapter da = new SqlDataAdapter(query, con);
da.SelectCommand.ExecuteNonQuery();
DataTable dt = new DataTable();
da.Fill(dt);
con.Close();
Hoca h1 = new Hoca();
h1.lecturer = new List<Lecturer>();
foreach (DataRow data in dt.Rows)
{
con.Open();
Lecturer l1 = new Lecturer();
string rankquery = String.Format("Select Enumeration.Type From Enumeration,Personnel Where Enumeration.ID=" + data[2].ToString());
string rankolum = "";
SqlCommand ranksorgu = new SqlCommand();
ranksorgu.Connection = con;
ranksorgu.CommandText = rankquery;
SqlDataReader rankdata = ranksorgu.ExecuteReader();
while (rankdata.Read())
{
rankolum = rankdata[0].ToString();
}
l1.id = data[0].ToString();
l1.Name = data[1].ToString();
l1.RankTitle = rankolum;
l1.Research = data[3].ToString();
l1.Email = data[4].ToString();
l1.Office = data[5].ToString();
l1.PhoneNumber = data[6].ToString();
l1.Photo = data[7].ToString();
l1.RankPosition = data[8].ToString();
h1.lecturer.Add(l1);
string str = js.Serialize(h1);
Label1.Text = str;
}