Iterating Through A DataReader : DataReader « ADO.net Database « ASP.NET Tutorial






<%@ Page Language="C#" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.SqlClient" %>
<script runat="server">

    void Page_Load(object sender, EventArgs e)
    {
        string ConnectionString = Convert.ToString(ConfigurationSettings.AppSettings["MSDEConnectString"]);
        string CommandText = "SELECT AuthorName, AuthorCity, AuthorContact_Email, AuthorWebsite FROM Author";
    
        SqlConnection myConnection = new SqlConnection(ConnectionString);
        SqlCommand myCommand = new SqlCommand(CommandText, myConnection);
    
        try
        {
            myConnection.Open();
            SqlDataReader myReader = myCommand.ExecuteReader();
            if (myReader.HasRows)
            {
                while (myReader.Read())
                {
                   for (int i=0; i<=myReader.FieldCount-1; i++)
                   {
                      if (myReader.IsDBNull(i))
                      {
                         Label1.Text += "Warning: Field " + i + " is NULL.";
                      }
                   }
                   Author p = new Author();
                   p.Name = myReader.GetString(0);
                   p.City = myReader.GetString(1);
                   p.Email = myReader.GetString(2);
                   p.Website = myReader.GetString(3);
                   Label1.Text += p.ToString();
                }
             }
             else
             {
                Label1.Text = "No rows returned";
             }
    
            if(!(myReader.IsClosed))
            {
             myReader.Close();
            }
        } catch (Exception ex) {
            throw (ex);
        } finally {
            myConnection.Close();
        }
    }
    
    public class Author
    {
        public string Name;
        public string City;
        public string Email;
        public string Website;
    
        public Author()
        {}
    
        public string ToString()
        {
            string description = "";
            description = "Name : " + this.Name + "<br />";
            description += "City : " + this.City + "<br />";
            description += "Contact : <a href=mailto:" + this.Email + ">" + this.Email + "</a><br/>";
            description += "Homesite : <a href='" + this.Website + "'>" + this.Website + "</a><br/><br/>";
    
            return description;
        }
    }

</script>
<html>
<body>
    <asp:Label id="Label1" runat="server"></asp:Label>
</body>
</html>

File: Web.config

<configuration>
    <appSettings>
        <add key="MSDEConnectString" value="server=(local)\YourDatabase;database=Books;uid=YourID;pwd=letmein;" />
    </appSettings>
</configuration>








18.24.DataReader
18.24.1.Using the DataReader Object
18.24.2.Iterating Through A DataReader
18.24.3.Create DataReader object from SqlCommand
18.24.4.List Binding DataReader
18.24.5.Returning Multiple Resultsets
18.24.6.Working with Multiple Active Resultsets