【问题标题】:ASP.NET Core session objects with binary serialization具有二进制序列化的 ASP.NET Core 会话对象
【发布时间】:2019-05-29 02:36:00
【问题描述】:

我有一个用例在会话中存储巨大的对象,它有一堆私有变量(所以不能使用 Json 序列化),有没有办法完成它? 二进制序列化是否偶然与 ISession 一起工作?

(我知道在会话中存储这种对象不是最佳做法)

【问题讨论】:

  • 不管怎样,私有变量可以序列化;您只需要显式地向它们添加 [JsonProperty] 属性。
  • 其实要更新的东西太多了,因为它有多层对象,只是想要一个快速启动的解决方案

标签: asp.net asp.net-core


【解决方案1】:

ISession 具有 SetTryGetValue 方法,它们都与 byte[] 一起工作,分别设置和获取二进制值。您将自己处理序列化为二进制文件; ISession 不会为你处理这个问题,但是一旦你有了byte[],你就可以在会话中设置它。

【讨论】:

  • 是的,它的工作原理很像 JSON 序列化,当对象发生变化时,我们需要显式更新会话对象以与更新后的数据保持同步
猜你喜欢
  • 2010-12-17
  • 2011-10-18
  • 1970-01-01
  • 2013-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-01
  • 2014-01-30
相关资源
最近更新 更多