【ASP.NET Core MVC】AsNoTrackingメソッドとは何か

AsNoTrackingメソッドとは

ASP.NET Core MVCで、DbContextを用いてデータベースからデータを取得する際に下記のような記述で取得されます。

AsNoTrackingメソッド

EntityFrameworkではDbContextを更新・削除した場合、SaveChangesメソッドでDBへ変更内容を反映させます。その際にどのデータが更新されたか変更履歴を管理し、ロールバックなどの処理が可能になります。

一方で、変更履歴を管理するためアクセス数が多かったり、データ量によっては処理速度が遅くなります。

AsNoTrackingメソッドを使用することで変更履歴を管理しないでクエリを実行できます。

そのため、データ参照のみではAsNoTrackingメソッドを使うことが多いです。