2011-10-21 96 views
0

我们试图缓存使用二进制序列化器从Memcached中的IDbSet中检索的实体。带EF惰性加载和DynamicProxy的Memcached高速缓存

一切正常,直到我们尝试从后续请求的缓存反序列化实体。

Unable to load type System.Data.Entity.DynamicProxies.users_131D253E3297AF73E52D604FD8627E3CE98FBA26BF1FBA904A6774E41F3D1550 required for deserialization. 

有人有什么想法吗?你需要代码示例吗?

回答

1

实体框架使用动态代理来支持延迟加载。顾名思义,这些类型是在运行时动态生成的,因此当您尝试反序列化存储类型时,可能无法在App域中使用这些类型。

作为一种可能的解决方案,您可以使用实体框架代码优先(不含virtual属性),或使用EF缓存