Entity framework : 按上下文跟踪实体

Entity framework : tracking entities by context

我正在阅读有关 Entity framework 和 Attach 方法的 Microsoft 文档,我复制了下面需要帮助理解的行:

"If you have an entity that you know already exists in the database but which is not currently being tracked by the context,...." 现在我有一些问题:在什么情况下和实体可能不会被上下文跟踪?实际上,我们说 "track" 是什么意思? 谢谢

in what situation and entity might not be tracked by a context?

当你把AsNoTracking() 放在LINQ 中时,它不会被跟踪。 AsNoTracking() 是我们用来提高查询性能的方法之一。如果您使用 AsNoTracking(),您将获得显着的性能。 有时您可能希望从查询中获取实体,但不希望上下文跟踪这些实体。这可能会在只读场景下查询大量实体时获得更好的性能。请参阅微软官方文档(https://msdn.microsoft.com/en-us/data/jj556203)

Actually, what does it mean when we say "track" ?

Entity framework 检查您是否对数据进行了任何更改并保存。 Entity framework 将有一个跟踪机制为您处理。这是微软的一篇文章,讨论什么时候使用 track 什么时候不用 trak。 https://docs.microsoft.com/en-us/ef/core/querying/tracking