c# - How to force SQL query return updated data in .NET? -


my c# program connects user request sql database, gets first open request, process , mark request closed. next open request.

the problem same request sql query although marked 'closed'. suspect cached result instead of updated data. don't know how clear cache.

i tried dispose sqldataadpater , create new 1 every time. tried add random number parameter sql select stored procedure. none of them worked.

can please me on issue? thanks.

the sql query is:

select top(1) requestid, requesttype, requestxml request  requeststatus='op'  

sql update command:

begin tran   update request set requeststatus=@requeststatus requestid=@requestid;   if (@requestxml not null)        update request set requestxml=@requestxml requestid=@requestid;   commit tran   

c# code:

sqldataadapter da = new sqldataadapter("srvgetopenrequest", cn); da.selectcommand.commandtype = commandtype.storedprocedure; sqlcommand cmd = new sqlcommand("srvupdaterequest", cn); cmd.commandtype = commandtype.storedprocedure; cmd.parameters.add("requestid", sqldbtype.int); cmd.parameters.add("requeststatus", sqldbtype.char); cmd.parameters.add("requestxml", sqldbtype.xml); datatable dt = new datatable(); cn.open(); da.fill(dt); cn.close(); while (dt.rows.count > 0) {  // process returned datatable here.    ..............      cmd.parameters["requeststatus"].value = "cl";     cn.open();     cmd.executenonquery();     // fetch next request process     da.fill(dt);     cn.close();  } 

i did checked database , record marked closed.

try calling dt.clear() before filling again.

fill method adds rows existing datatable


Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -