c# - Getting SQL query string from DbCommand with Parameters -
c# - Getting SQL query string from DbCommand with Parameters -
just before executing sql query on mysql database in c# want log query executed. have logs select * foo id = @id see select * foo id = 5. how do that?
dbcommand dbcommand = dbfactory.createcommand(); dbcommand.commandtext = "select * foo id = @id"; dbparameter param = dbcommand.createparameter(); param.parametername = "@id"; param.value = 5; dbcommand.parameters.add(param); dbconnection.open(); log.addverbose(string.format("sql query: {0}", dbcommand.commandtext)); dbcommand.executereader();
if trying log can extension method this.
public static string getgeneratedquery(this sqlcommand dbcommand) { var query = dbcommand.commandtext; foreach (var parameter in dbcommand.parameters) { query = query.replace(parameter.parametername, parameter.value.tostring()); } homecoming query; } and can utilize this.
log.addverbose(string.format("sql query: {0}", getgeneratedquery(dbcommand))); c# mysql sql
Comments
Post a Comment