Mega Code Archive

 
Categories / ASP.Net Tutorial / ADO Net Database
 

Using Multiple ResultSets in a single DbDataReader

<%@ Page Language="C#"           AutoEventWireup="true"           CodeFile="Default.aspx.cs"           Inherits="MultipleResultSets" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server">    <title>Using Multiple ResultSets in a single DbDataReader</title> </head> <body>    <form id="form1" runat="server">       <div id="container">       <asp:GridView ID="grdBooks" runat="server" />       <h2>Authors</h2>       <asp:GridView ID="grdAuthors" runat="server" />                 <asp:Label ID="labMsg" runat="server" />                 </div>    </form> </body> </html> File: Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using System.Configuration; public partial class MultipleResultSets : System.Web.UI.Page {    protected void Page_Load(object sender, EventArgs e)    {       string connString = ConfigurationManager.ConnectionStrings["Northwind"].ConnectionString;       SqlConnection conn = null;       SqlDataReader reader = null;       try       {          conn = new SqlConnection(connString);          conn.Open();          string sql = "SELECT * FROM Products; SELECT * FROM Customers;";          SqlCommand cmd = new SqlCommand(sql, conn);          reader = cmd.ExecuteReader();          grdAuthors.DataSource = reader;          grdAuthors.DataBind();          reader.NextResult();          grdBooks.DataSource = reader;          grdBooks.DataBind();       }       catch (Exception ex)       {           labMsg.Text = "Error occurred accessing the database";           labMsg.Text += "<br/>" + ex.Message;       }       finally       {          if (reader != null) reader.Close();          if (conn != null) conn.Close();       }     } }