当我使用实体框架执行存储过程时,它将生成以下语法:
exec sp_executesql N'EXEC test @CityIds',N'@CityIds nvarchar(1)',@CityIds=N'1'我们的DBA已经引起了对这类查询的关注,并希望摆脱sp_executesql。
查询内容应为:
exec test @CityIds=1在实体框架中有什么不同的方法来实现这一点?
发布于 2016-11-24 13:09:56
在实体框架中使用sp_executesql /ADO.NET is intentional.It被观察到,有时在生成的intentional.It中,EF在直接执行查询和有时使用sp_executesql.The sp_executesql之间起着非常决定性的作用,当客户端参数化帮助重新使用一个参数化编译计划时。当没有指定参数时,Server将尝试进行自动参数化,以帮助查询计划的重用。
希望下面的线程将帮助您如何使用EXEC而不是sp_executesql与EF。
https://stackoverflow.com/questions/37326884
复制相似问题