asp.net - Bug in my code or Am not doing it right -



asp.net - Bug in my code or Am not doing it right -

i have been struggling usecase 2 days now.all need read patient's visitnumber patient visit table , populate dropdownlist given patient number.after much research these 2 links address same issue.i did described here sample on stackover site still mine not working , no error displayed. another sample described here! here codes:html

<li> <asp:label runat="server" id ="lblvisits">visit number</asp:label> <asp:dropdownlist id="dropdownlist2" runat="server" height="16px" width="174px" style="margin-left: 46px"> <asp:listitem text=""></asp:listitem> <asp:listitem value=""></asp:listitem> </asp:dropdownlist> </li>

codebehind:

protected void btn_search_click(object sender, eventargs e) { string connect = system.configuration.configurationmanager.connectionstrings["db_connection"].tostring(); string num = txtpatientnumber.tostring(); sqlconnection con = new sqlconnection(connect); string statement = "select visit_number visit " + "where patient_number=@patient_number"; sqlcommand cmd = new sqlcommand(statement, con); cmd.parameters.addwithvalue("@patient_number", num); sqldatareader reader; seek { con.open(); reader = cmd.executereader(); while (reader.read()) { dropdownlist2.datasource = reader; dropdownlist2.datatextfield = reader["visit_number"].tostring(); dropdownlist2.datavaluefield = reader["visit_number"].tostring(); dropdownlist2.databind(); } reader.close(); } grab (sqlexception excep) { //response.write("<script language=javascript>alert('patient number not found.');</script>"); errormessage.text = "error occurred" + excep.message.tostring(); } { con.close(); } }

problem lies here:

while (reader.read()) { dropdownlist2.datasource = reader; dropdownlist2.datatextfield = reader["visit_number"].tostring(); dropdownlist2.datavaluefield = reader["visit_number"].tostring(); dropdownlist2.databind(); }

your using .datatextfield , .datavaluefield wrong. how should like:

dropdownlist2.datatextfield = "visit_number"; dropdownlist2.datavaluefield ="visit_number";

also should not rebind dropdownlist every row returned db. remove while (reader.read()).

final code:

dropdownlist2.datasource = reader; dropdownlist2.datatextfield = "visit_number"; dropdownlist2.datavaluefield = "visit_number"; dropdownlist2.databind();

asp.net webforms

Comments

Popular posts from this blog

web services - java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer -

Accessing MATLAB's unicode strings from C -

javascript - mongodb won't find my schema method in nested container -