1. ホーム
  2. entity-framework

保存すべき保留中の変更があるかどうかを確認する

2023-08-11 02:51:53

質問

Entity Framework のエンティティコンテキストに未保存の変更があるかどうかを確認する方法はありますか。

どのように解決するのですか?

これはうまくいくかもしれません(変更によって、エンティティを追加、削除、修正することを意味する場合)。

bool changesMade = (context.ObjectStateManager.GetObjectStateEntries(EntityState.Added).Count() +
                    context.ObjectStateManager.GetObjectStateEntries(EntityState.Deleted).Count() +
                    context.ObjectStateManager.GetObjectStateEntries(EntityState.Modified).Count()
                    ) > 0;

編集します。

コードを改善しました。

bool changesMade = context.
                   ObjectStateManager.
                   GetObjectStateEntries(EntityState.Added | 
                                         EntityState.Deleted | 
                                         EntityState.Modified
                                        ).Any();