Anzeige Datenbank-Wert auf dem Etikett in einer Tabelle

Ich versuche zu verwenden datareader zur Darstellung bestimmter Wert aus bestimmten Tabelle in der Datenbank. Wie Sie sehen können aus meiner sql-Abfrage, die ich verwendet Daten aus 3 separaten Tischen und memberreportid und Benutzername hat ein PK und FK r/s.
Leider war ich nicht in der Lage, um die Anzeige den Wert wollte ich wie unten angegeben.

Dies ist der Fehler, ich recevied

IndexOutOfRangeException wurde unhandled by user code

Ich kommentieren die Darstellung aus dem Wert-codes Zeile für Zeile und in der Tat alle erhalten den oben genannten Fehler

Hier sind meine codes.

protected void DDLCase_SelectedIndexChanged(object sender, EventArgs e)
    {

        SqlConnection con = new SqlConnection("Data Source = localhost; Initial Catalog = project; Integrated Security = SSPI");
        con.Open();
        SqlCommand cm = new SqlCommand("Select * from MemberReport mr, PoliceReport pr, LoginRegisterOthers lro where pr.memberreportid = '" + DDLCase.SelectedItem.Text + "' and mr.memberreportid=pr.memberreportid and lro.username=mr.username and caseprogress='settled'", con);
        SqlDataReader dr;
        dr = cm.ExecuteReader();
        if (dr.Read())
        {
            lblFullName.Text = dr["lro.fullname"].ToString();
            lblContact.Text = dr["lro.contact"].ToString();
            lblTOC.Text = dr["mr.typeofcrime"].ToString();
            lblLocation.Text = dr["mr.location"].ToString();
            lblCRDT.Text = dr["mr.CRdatetime"].ToString();
            lblPicture.Text = dr["picture"].ToString();
            lblAssign.Text = dr["pr.policeid"].ToString();
            lblPRDT.Text = dr["pr.PRdatetime"].ToString();
            lblCR.Text = dr["mr.citizenreport"].ToString();
            lblPR.Text = dr["pr.policereport"].ToString();
        }

        con.Close();

    }
Schreibe einen Kommentar