Dapper and DynamicParameter() -


i looking through code , unable read it. tried find material , examples unable find specific or documentation me understand issue. can read me code , if there documentation read it.

at first question why need use dynamicparameter() object of dapper. not sure => means.

public void validrecord(string filename, string rawcontent, int userid) {     run(conn => conn.execute("[dbo].[storedproc_getdone]"         , new dynamicparameters             (new dictionary<string, object>                 {                     {"filename", filename},                     {"rowcontent", rawcontent},                     {"usercreated", userid},                 }), commandtype.storedprocedure)); } 

run not part of dapper, => in c# used create lambda expression, in case expect action<dbconnection>, i.e. guess run looks lot this:

run(action<dbconnection> action) {     using(var conn = createconnection()) {         conn.open();         action(conn);     } } 

i.e. "i'm going give connection; want it?" - in case choosing execute stored procedure.

now, worth noting in example there no benefit in using dynamicparameters, since information known - use:

run(conn => conn.execute("[dbo].[storedproc_getdone]",     new { filename, rawcontent, usercreated = userid },     commandtype.storedprocedure)); 

which work well. in answer "why need use dynamicparameter - you don't in scenario. however, in cases might - if building sql on fly manually, example:

if(name != null) {     sql.append("and name = @name ");     args.add("name", name); } 

Comments

Popular posts from this blog

c# - Send Image in Json : 400 Bad request -

javascript - addthis share facebook and google+ url -

ios - Show keyboard with UITextField in the input accessory view -