实体空间 - 使用SQLServer会话状态时保存问题

时间:2011-11-10 22:04:50

标签: asp.net session-state entityspaces

我们一直在使用Entity Spaces,一切都在我们的本地开发机器上运行良好,直到我们开始使用SqlServer进行会话管理。 我们的托管服务(ITech)有一个服务器场,因此我们必须使用SqlServer来进行会话管理。

我们看到的问题是保存放入会话然后检索的对象。对象的rowstate被重置为无效而不是添加等。 我们联系了实体空间寻求帮助,他们的建议是使用“他们的”序列化方法将对象转换为字符串,然后将字符串放入会话中。当我们尝试这个时,主要对象被正确序列化,但它没有尝试序列化对象图中的任何子对象。例如,一个贷款对象,其中包含借款人名单。贷款本身将被序列化,但不是借款人名单。

如果我手动将其序列化为二进制并将其存储到会话中,那么整个对象图就在那里,但现在我们又回到没有正确设置的rowstate。我决定通过创建自己的名为“Status”的rowstate属性来解决这个问题。然后,我在将序列化为二进制文件之前将Status属性设置为对象rowstate。然后我将rowstate从无效转换为我在反序列化对象时设置的状态。这一切都在调试器中“看起来”,但是,当我告诉它保存时,Entity Spaces没有创建正确的SQL。它试图在没有实体属性值的情况下进行保存。

是否还有其他人尝试过此操作,如果是,您是否找到了解决方案?

0 个答案:

没有答案