DataReader Multiple result set : SqlDataReader « ADO.net Database « ASP.NET Tutorial






<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="DataReaderMultiple" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
  
    <asp:Literal runat="server" ID="HtmlContent" />
    </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.Text;
using System.Data.SqlClient;

public partial class DataReaderMultiple : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    string connectionString = "Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI";
    SqlConnection con = new SqlConnection(connectionString);
    string sql = @"SELECT TOP 5 EmployeeID, FirstName, LastName FROM Employees;" +
      "SELECT TOP 5 ContactName, ContactTitle FROM Customers;" +
      "SELECT TOP 5 SupplierID, CompanyName, ContactName FROM Suppliers";

    SqlCommand cmd = new SqlCommand(sql, con);

    con.Open();
    SqlDataReader reader = cmd.ExecuteReader();

    StringBuilder htmlStr = new StringBuilder("");
    int i = 0;
    do
    {
      htmlStr.Append("<h2>Rowset: ");
      htmlStr.Append(i.ToString());
      htmlStr.Append("</h2>");

      while (reader.Read())
      {
        htmlStr.Append("<li>");
        for (int field = 0; field < reader.FieldCount; field++)
        {
          htmlStr.Append(reader.GetName(field).ToString());
          htmlStr.Append(": ");
          htmlStr.Append(reader.GetValue(field).ToString());
          htmlStr.Append("&nbsp;&nbsp;&nbsp;");
        }
        htmlStr.Append("</li>");
      }
      htmlStr.Append("<br><br>");
      i++;
    } while (reader.NextResult());


    reader.Close();
    con.Close();

    HtmlContent.Text = htmlStr.ToString();
    }
}
File: Web.config

<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <connectionStrings>
    <add name="Northwind" connectionString="Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI"/>
  </connectionStrings>

  <appSettings>
    <add key="factory" value="System.Data.SqlClient" />
    <add key="employeeQuery" value="SELECT * FROM Employees" />
  </appSettings>

  <system.web>
    <compilation debug="true"/>
    <authentication mode="Windows"/>
  </system.web>
</configuration>








18.6.SqlDataReader
18.6.1.Building Data Access Components with ADO.NET
18.6.2.Returning a Resultset
18.6.3.DataReader Multiple result set
18.6.4.The SqlConnection, SqlCommand, and SqlDataReader objects (C#)
18.6.5.The SqlConnection, SqlCommand, and SqlDataReader objects (VB)