当我在我的SQL Server数据库执行更新,我得到受更新的行的结果和一些触发器的影响行.
例如,直接在数据库上执行更新:
UPDATE: (32 row(s) affected)
Trigger1: (1 row(s) affected)
Trigger2: (2 row(s) affected)
...
Run Code Online (Sandbox Code Playgroud)
现在,当我执行时,_context.Database.ExecuteSqlCommand(query, params)我总是得到所有结果的总和,在我的例子中,结果值是35.
UPDATE在我的例子中,我只需要结果32.  
是否有可能忽略触发器的结果?
我认为如果可以更改触发器,@Alireza 的答案是最有意义的,但如果不能,您可以更改数据库调用来执行更新语句并返回吗@@ROWCOUNT?
_context.Database.SqlQuery<int>("update xx ...; select @@ROWCOUNT");
Run Code Online (Sandbox Code Playgroud)
我在 MSDN 上找不到任何文档,但这个问题证实了 @@ROWCOUNT 不受触发器的影响。