【发布时间】:2013-12-25 07:43:50
【问题描述】:
- EF Code first 中的连接和断开“POCO”是什么意思?
- 您能解释一下如何在不同的场景中使用它们吗?
【问题讨论】:
标签: entity-framework ef-code-first poco
【问题讨论】:
标签: entity-framework ef-code-first poco
当您使用实体框架 DbContext 将对象从数据库读取到应用程序时,上下文将跟踪这些对象。这意味着当您在上下文中调用 SaveChanges 时,您对这些对象所做的任何更改都将持久保存到数据库中。 这可以称为连接对象。
另一方面,您可能希望将这些对象传递给另一个进程。例如。您可能有一个服务器从数据库中读取数据,然后将这些对象传递给客户端。客户端将接收到与数据库没有连接的纯 poco 对象。服务器不会自动检测到客户端可能对对象所做的任何更改。这可以称为断开连接的对象。 IE。它们不受上下文跟踪。
客户端可以将可能已被客户端更改或未更改的对象传递回服务器。然后,服务器可以选择将对象附加到上下文,并在此过程中将断开连接的对象转换为连接的对象。在这种情况下,服务器通常会有一些功能来检测对象的删除、添加和更改,但这取决于服务器代码的开发人员根据应用程序的要求来决定它应该如何工作。
【讨论】: