反序列化EventValidation对象

本文关键字:对象 EventValidation 反序列化 | 更新日期: 2023-09-27 17:54:45

我正在尝试序列化和反序列化事件验证存储。我已经在MSDN上使用代码对视图状态做了相同的操作。我似乎无法从EventValidation对象中获取数据。

System.Web.UI.LosFormatter los = new System.Web.UI.LosFormatter();
var t = los.Deserialize("/wEdAAXD48AAvF6Ff7P5UOQbT3VqkrDKlMWdnNXfGOHHYL4xn7VF+rYDddmo2pWyOYlEzR9ytSa0+vS8Kw5xkFTTwf/ogY5mU3PIFIVTnINRkldVDi8fjE6FJuo5OYrccfM1phFxAalSeL3MjHSQK44wYPDs")
HashSet<object> h = new HashSet<object>();
foreach (object d in t)
{
   DoSomething()
}

System.Web.UI。EventValidationStore是对象类型

我尝试使用散列集,列表等。我是新手,这是我知道怎么做的,但我很想学习它。

我得到的错误是:"foreach语句不能操作'object'类型的变量,因为'object'不包含'GetEnumerator'的公共定义"

我在MSDN上找不到关于System.Web.UI.EventValidationStore的任何信息。

如果这是一个令人困惑的帖子,我很抱歉,我只是不知道该怎么问。

Update:我成功地反序列化了一个EventValidation base64字符串,但其他字符串被证明是难以捉摸的。代码段中的那个似乎不起作用。

概要:我需要能够解码/反序列化和编码/序列化。net中的事件验证base64字符串。

反序列化EventValidation对象

__EVENTVALIDATION字段结构是ASP内部的。NET,可能会有变化。不支持尝试反序列化/序列化它。支持的交互方式是通过页面的ValidateEventRegisterForEventValidation api。

你到底想要完成什么?也许我们能找到一种可行的方法。