てぃぐれのプログラマwiki

ワクワクに従う

EntityStateとSQLRaw 【C#/Blazor/EntityFrame】

経緯

bindしているデータの変更管理をするときみんなはどうしているだろうか。

Datatableを使用していた時、Rawstateというものがあった。

Added,modified,unchange等、データの行ごとに状態を持ち、追加するもの、変更するもの等を管理していた。

さて、Entityframeworkを利用する場合はどうすればいいのか。

 

EntityState

EntityStateで上記と同様のことを管理できる。

エンティティの状態の操作 - EF6 | Microsoft Docs

 

SQLRawを使う場合

しかし、そこには注意がある。

SQLRawを使用すると管理ができなくなるようだ。【EFC3.0】の話で今はどうかわからないが、変わってないだろう。

[Entity Framework Core] ExecuteSqlRaw で更新された内容を取得する方法 | MSeeeeN | 大阪発 IT メディア by MSEN

つまり、EntityでSqlを発行していかないといけないので慣れていないわたしにはかなり厳しいので、SQLでどうにかできないか探していたのだが。。

他に何かいいほうはないものか。。。

 

追記

ChangeTracking 変更追跡処理【C#/Blazor/EntityFramework】 - てぃぐれのプログラマwiki

みつけた。