c# - Return Parameter From SQL Query -


i trying run sql stored procedure , return value query. syntax throws error of:

cannot implicitly convert type 'system.data.sqlclient.sqlparameter' 'decimal'

this syntax, should alter in order have run properly?

public decimal returnvaluefromquery(string connectionstring, string sqlquery, int blah, datetime d1, datetime d2) { string cs = system.configuration.configurationmanager.appsettings[connectionstring].tostring(); try {     using (sqlconnection conn = new sqlconnection(cs))     using (sqlcommand cmd = conn.createcommand())     {         cmd.commandtext = sqlquery;         cmd.connection = conn;         cmd.commandtype = commandtype.storedprocedure;         cmd.parameters.add("@blah", sqldbtype.int).value = blah;         cmd.parameters.add("@startdate", sqldbtype.date).value = d1;         cmd.parameters.add("@enddate", sqldbtype.date).value = d2;         var returnparameter = cmd.parameters.add("@returnval", sqldbtype.int);         returnparameter.direction = parameterdirection.returnvalue;         conn.open();         cmd.executenonquery();         return returnparameter;     } } catch { } } 

your method says return decimal, writing return returnparameter not possible because doesn't respect signature of method.

you should convert value property of return parameter decimal value

return convert.todecimal(returnparameter.value); 

however have perplexities choice use parameter parameterdirection.returnvalue. have correctly written (sqldbtype.int) these parameters can return integers not decimals. perhaps, should consider parameter parameterdirection.output , pass in calling list of stored procedure

of course if have integer there possibility change method return value int.
, suggest remove empty catch block. these blocks deadly when have exception because never know it.


Comments

Popular posts from this blog

ruby - Trying to change last to "x"s to 23 -

jquery - Clone last and append item to closest class -

c - Unrecognised emulation mode: elf_i386 on MinGW32 -