EF中连接和断开的POCO

Mas*_*oud 1 entity-framework poco ef-code-first

  1. 连接和断开连接的"POCO"首先在EF代码中意味着什么?
  2. 你能解释一下如何在不同场景中使用它们吗?

Ola*_*ybø 6

当您使用Entity Framework DbContext将数据库中的对象读入应用程序时,上下文将跟踪这些对象.这意味着当您在上下文中调用SaveChanges时,对这些对象所做的任何更改都将保留到数据库中.这可以称为连接对象.

另一方面,您可能希望将这些对象传递给另一个进程.例如,您可能有一台服务器从数据库中读取数据,然后将这些对象传递给客户端.客户端将接收与数据库无连接的纯poco对象.客户端可能会对对象执行的任何更改都不会被服务器自动检测到.这可以称为断开连接的对象.即它们没有被上下文跟踪.

客户端可以将客户端可能已经或可能未被更改的对象传递回服务器.然后,服务器可以选择将对象附加到上下文,并且在该过程中将断开连接的对象转换为连接的对象.在这种情况下,服务器通常会有一些功能来检测对象的删除,添加和更改,但这取决于服务器代码的开发人员,以根据应用程序的要求决定它应该如何工作.