我有一个使用EF 6.1.3访问数据库的服务。我有POCO实体来存储EF的结果,但是resutls是dynamicProxies而不是POCO实体。
问题是,当服务尝试向客户端发送此动态代理时,收到http响应时出错。
我试图在dbContext中禁用代理实体的创建,然后我收到真正的POCO实体,所以我没有问题。
但实际上我并不知道什么是动态代理,何时使用它们以及何时可以禁用它们。
编辑:我已禁用延迟加载。
感谢。
答案 0 :(得分:2)
创建POCO实体类型的实例时,实体框架 通常会创建动态生成的派生类型的实例 充当实体的代理人。此代理会覆盖某些虚拟代码 要插入挂钩以执行操作的实体的属性 访问属性时自动执行。例如,这个 机制用于支持延迟加载关系。
来源:https://msdn.microsoft.com/en-us/data/jj592886.aspx
您将在上面的文章中找到所需的一切!