我有一个作为序列化 base-64 字符串映射到 cookie 的对象。如果对存储在服务器端 cookie 中的对象进行了更改,我只想写出一个新的 cookie。
我想要做的是在从 cookie/初始化中提取对象时获取哈希码,并将原始哈希码与在我将 cookie 标头发送到客户端之前存在的哈希码进行比较,以确保我没有除非进行了更改,否则重新序列化/发送 cookie。
我打算重写 .NET 的Object.GetHashCode()
方法,但我不确定这是检查对象是否被修改的最佳方法。
有没有其他方法可以检查对象是否被修改,或者我应该覆盖该GetHashCode()
方法。
更新我决定接受@rmbarnes 的回答,因为它对问题有一个有趣的解决方案,并且因为我决定在他的帖子末尾使用他的建议而不是检查修改。不过,我仍然很想听听任何人可能对我的场景有任何其他解决方案。