Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果未进行任何更改,实体框架的DbContext是否保存更改?_C#_.net_Entity Framework_Dbcontext - Fatal编程技术网

C# 如果未进行任何更改,实体框架的DbContext是否保存更改?

C# 如果未进行任何更改,实体框架的DbContext是否保存更改?,c#,.net,entity-framework,dbcontext,C#,.net,Entity Framework,Dbcontext,我在网上找不到答案 假设我有一个DbContext,我只是从中选择所有的实体。我不在数据库集上添加、更新或删除任何实体 如果我在DbSet上调用SaveChanges。即使我没有对DbSet做任何更改,建立连接和其他东西也会浪费资源吗 它是否足够聪明来检测是否进行了更改,并以不同的方式进行操作?它使用EntityState来确定没有要提交的内容,因此不会浪费资源 你试过用探查器来查看吗?似乎这个问题可以通过一点测试来回答。不,它没有,DbContext跟踪更改以便知道提交什么。如果它不知道任何更

我在网上找不到答案

假设我有一个DbContext,我只是从中选择所有的实体。我不在数据库集上添加、更新或删除任何实体

如果我在DbSet上调用SaveChanges。即使我没有对DbSet做任何更改,建立连接和其他东西也会浪费资源吗


它是否足够聪明来检测是否进行了更改,并以不同的方式进行操作?

它使用EntityState来确定没有要提交的内容,因此不会浪费资源


你试过用探查器来查看吗?似乎这个问题可以通过一点测试来回答。不,它没有,DbContext跟踪更改以便知道提交什么。如果它不知道任何更改,那么连接到数据库到底有什么意义呢。