asp.net - Cannot find table 0 error in C# -
i error when try execute stored procedure , null dataset.
private sqlconnection con = new sqlconnection(configurationmanager.connectionstrings["learnaspconnectionstring"].connectionstring); protected void btnregister_click(object sender, eventargs e) { try { con.open(); sqlcommand cmd = new sqlcommand("dbo.registerinsert", con); cmd.commandtype = commandtype.storedprocedure; sqlparameter p1 = new sqlparameter("@fname", txtfname.text); sqlparameter p2 = new sqlparameter("@lname", txtlname.text); sqlparameter p3 = new sqlparameter("@company", txtcompany.text); sqlparameter p4 = new sqlparameter("@phone", txtphone.text); sqlparameter p5 = new sqlparameter("@address", txtaddress.text); sqlparameter p6 = new sqlparameter("@email", txtemail.text); cmd.parameters.add(p1); cmd.parameters.add(p2); cmd.parameters.add(p3); cmd.parameters.add(p4); cmd.parameters.add(p5); cmd.parameters.add(p6); cmd.executenonquery(); con.close(); sqldataadapter da = new sqldataadapter(cmd); dataset ds = new dataset(); da.fill(ds); datatable dt = ds.tables[0]; listviewdetails.datasource = ds; listviewdetails.databind(); lblmessage.visible = true; lblmessage.text = "registration completed successfully!"; } catch (sqlexception ex) { } } my stored procedure is:
create procedure [dbo].[registerinsert] -- add parameters stored procedure here @fname nvarchar(50), @lname nvarchar(50), @company nvarchar(50), @phone nvarchar(50), @address nvarchar(250), @email nvarchar(250) set nocount on; insert [dbo].[register] ([fname], [lname], [company], [phone], [address], [email]) values (@fname, @lname, @company, @phone, @address, @email) end i not able display data in listview control when run code.button click event stores values in database twice , gives error'cannot find table 0'.
please me let me know wrong in code.
thanks in advance.
the problem dataset not contain table objects. therefore ds.table[0] not exist , thrown error. add check ensure dataset has tables before proceeding.
// check if ds has table if(ds.tables.count>0) { //check if ds.table[0] has rows if(ds.tables[0].rows.count>0){ //do } }
Comments
Post a Comment