型または名前空間の名前 'DbEntityEntry 'が見つかりませんでした

c# entity-framework-core

質問

私はEF7の前に使った次のインターフェースを持っています。 EF7を使用してアプリケーションをビルドしようとすると、次のエラーが発生します。このタイプはどこにも見つからないようです。私はEF7のためにこのコードを変更する方法についてのあなたの提案に本当に感謝します。

エラーCS0246型または名前空間の名前 'DbEntityEntry'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)

public interface IContext
{
    DbSet<Client> Clients { get; set; }
    DbSet<TEntity> Set<TEntity>() where TEntity : class;

    DbEntityEntry<TEntity> Entry<TEntity>(TEntity entity) where TEntity : class;

    int SaveChanges();
}

受け入れられた回答

Entity Framework 7にはDbEntityEntry型はありません。基本的な変更追跡の実装全体が変更されており、これの正確なレプリケーションはありません。

同様の目的を持つ新しいMicrosoft.Data.Entity.ChangeTracking名前空間にはEntityEntry型がありますが、以前のバージョンのEntity FrameworkのDbEntityEntry型と互換性がないため、動作が少し異なります。

あなたはからアクセスできChangeTrackerを介してアクセス可能でDbContext.ChangeTracker

しかし、そのインターフェースを維持することに関しては、かなりのものが変更されているので、これはあなたを助けることはまずありません。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ