c# - How to convert string to int32 from data table? -
i approached issue trying convert string (movie name) int32 (movie id #) when typed movie name print out movie id number. doing wrong here? causes error stated:
unable cast object of type 'system.data.sqlclient.sqlconnection' type 'system.iconvertible'
my code:
string filename, connectioninfo; sqlconnection db; this.listbox1.items.clear(); filename = "netflix.mdf"; connectioninfo = string.format(@"data source=(localdb)\v11.0;attachdbfilename=|datadirectory|\{0};integrated security=true;", filename); db = new sqlconnection(connectioninfo); db.open(); sqlcommand cmd = new sqlcommand(); cmd.connection = db; string moviename = textbox1.text; cmd.commandtext = string.format( @"select movieid movies moviename = '{0}';", moviename); sqldataadapter adapter = new sqldataadapter(cmd); dataset ds = new dataset(); adapter.fill(ds); db.close(); int id = system.convert.toint32(cmd); this.listbox1.items.add(id);
your cmd object isn't result of query, executing query @ executereader method. return sqldatareader object used iterate query results.
this example msdn:
using (sqlconnection connection = new sqlconnection( connectionstring)) { connection.open(); sqlcommand command = new sqlcommand(querystring, connection); sqldatareader reader = command.executereader(); while (reader.read()) { console.writeline(string.format("{0}", reader[0])); } }
in example, querystring
query select movieid movies where...
, connection
db object
the object reader
can accesed array (property indexer), reader[0]
contains value of first column object after first read, after multiple reads contains value of first column iterating on select resulting rows
also, can't cast string int, need int.parse or tryparse method converting string int.
for converting first column know string int int.parse((string)reader[0])
Comments
Post a Comment