Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Access a specific row in DataReader

I have a datareader to display a list of gameweeks in a js carousel.

I need to be able to add an if statement to change the div class of the current gameweek.

This is my current code:

if (dReader.HasRows) {
    while (dReader.Read()) {                
        gameweekList.Text += "<div class=\"item\"><h4>Gameweek " + 
            (dReader["gameweekID"].ToString()) + "</h4></div>";
    }
} else {
    gameweekList.Text = "Error Finding Gameweeks";
}
dReader.Close();
conn.Close();

In effect I want to add if(dreader[1]) then add the extra bit, how is this possible?

like image 366
JackofAll Avatar asked Mar 16 '13 14:03

JackofAll


2 Answers

I find it easier to use a DataTable or DataSet. Something like this:

DataTable dt = new DataTable();
dt.Load(dreader)

Then you can more easily reach a certain row using the DataTable.Rows property.

like image 131
jiiri Avatar answered Oct 16 '22 18:10

jiiri


How about...

if (dReader.HasRows) {
    while (dReader.Read()) {

        if ( dReader["gameweekID"].ToString() == currentWeekId ) 
        {    
            gameweekList.Text += "<div class=\"somethingSpecial\"><h4>Gameweek " + 
            (dReader["gameweekID"].ToString()) + "</h4></div>";
        } 
        else 
        {
            gameweekList.Text += "<div class=\"item\"><h4>Gameweek " + 
            (dReader["gameweekID"].ToString()) + "</h4></div>";
        }
    }
} else {
    gameweekList.Text = "Error Finding Gameweeks";
}
dReader.Close();
conn.Close();
like image 27
JamesWest Avatar answered Oct 16 '22 17:10

JamesWest