SQL Server에 7 개의 결과 집합을 반환하는 저장 프로 시저가 있습니다. ASP.NET에서이 저장 프로 시저를 호출하고 ASP.NET 페이지에 7 개의 GridView를 결과로 채 웁니다. 데이터를 얻기 위해 SqlDataReader를 사용하고 있지만 GridView를 채우기 위해 C# 코드를 고민하고 있습니다.하나의 저장 프로 시저에서 많은 GridView 컨트롤을 채우는 방법?
나는 데이터를 얻을 수있는 DAL 클래스를 생성하고 내가 거기에이 방법이 : 내가 전화하려고 해요
private SqlDataReader MultipleResults(SqlCommand cmd)
{
SqlConnection con = new SqlConnection(_connectionString);
cmd.Connection = con;
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
con.Close();
return dr;
}
을 :
public SqlDataReader CheckDataIntegrity()
{
SqlCommand cmd = new SqlCommand("cc.DataCheck");
return MultipleResults(cmd);
}
도우미 메서드 수 MultipleResults 다음과 같습니다를 내 페이지의 구성 요소는 다음과 같습니다.
private void FillGridViews()
{
DBUtil DB = new DBUtil();
using (SqlDataReader dr = DB.CheckDataIntegrity())
{
if (dr.HasRows)
{
while (dr.Read())
{
GridView1.DataSource = dr;
GridView1.DataBind();
}
}
}
}
예를 들어 웹을 검색했습니다. 이,하지만 아무것도 찾을 수 없습니다.
리소스를 알고 있습니까? 아니면 공유 할 작은 예제가 있습니까?
감사합니다.
multipleResults 메서드에서 SqlConnection을 using 문으로 묶어야합니다. – Lareau
@Laraeu -이 점이 아무런 차이가 없었습니다. 독자가 닫힐 때 HasRows를 호출하려는 시도가 잘못되었습니다. " –
답변의 설명에 문제가 있음을 확인했습니다. MultiResults의 매개 변수를 변경하여 sqlconnection을 허용하여 열기 및 닫기를 효율적으로 관리 할 수 있습니다. – Lareau