.NET(C#) SqlDataReader에서 DataGridView로 바인딩하기

 

SqlDataReader DataGridView

 

CS 프로그램을 학습하던 중 ExecuteReader 함수를 호출하여 SqlDataReader 에 데이터를 담아서 사용하게 되었습니다. 그것을 DataGridView 에 바인딩을 할 경우 오류는 발생하지 않으나 바인딩되지 않는 것을 확인 하였습니다.

그럼 어떻게 DataGridView 에 바인딩 할 수 있을까

SqlDataReader을 DataTable에 담고 그것을 DataGridView에 넘기면 되었습니다.

 

using System.Data;
using System.Data.SqlClient;

 

SqlConnection con = new SqlConnection(new ClsConn().ConnectionString);

SqlCommand cmd = null;

DataTable dt = new DataTable();

dt.Load(cmd.ExecuteReader());

 

cmd = new SqlCommand("프로시저명", con);

cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 999999;
cmd.Parameters.Add("@param1", SqlDbType.VarChar, 1);

cmd.Parameters["@param1"].Value = param1;

 

con.Open();

dt.Load(cmd.ExecuteReader());

dataGridView.DataSource = dt;

 

SqlDataReader 에서 DataGridView로 값을 넘기는 방법 이였습니다.

 

Posted by JOY [바가지]

댓글을 달아 주세요

  1. kangdante 2018.06.02 07:47 신고  댓글주소  수정/삭제  댓글쓰기

    필요한 사람에게는 유용한 정보같아요
    여유로운 휴일보내세요.. ^^

  2. 잉여토기 2018.06.03 19:31 신고  댓글주소  수정/삭제  댓글쓰기

    바인딩 되지 않아 고민하시는 분들에게 빛이 될만한 정보네요.

  3. 귀여운걸 2018.06.03 19:51 신고  댓글주소  수정/삭제  댓글쓰기

    이해하기 쉽게 알려주셔서 너무 감사드려요~
    덕분에 잘 배워갑니다^^



티스토리 툴바