C# ASP.NET PageViewState会话状态持久器
这就是我所做的 在Corelibrary下创建了一个新文件夹。 将其命名为“适配器” 在“适配器”下,创建了一个新的类文件。 将类文件命名为“PageStateAdapter.cs” 从“PageStateAdapter.cs”中的PageAdapter类扩展 为GetStatePersister添加覆盖,如下所示。 代码: 在Web->App Browsers下创建了浏览器文件 在浏览器中添加了以下内容。将文件命名为“Default.browser”C# ASP.NET PageViewState会话状态持久器,c#,asp.net,session-state,page-state,C#,Asp.net,Session State,Page State,这就是我所做的 在Corelibrary下创建了一个新文件夹。 将其命名为“适配器” 在“适配器”下,创建了一个新的类文件。 将类文件命名为“PageStateAdapter.cs” 从“PageStateAdapter.cs”中的PageAdapter类扩展 为GetStatePersister添加覆盖,如下所示。 代码: 在Web->App Browsers下创建了浏览器文件 在浏览器中添加了以下内容。将文件命名为“Default.browser” <browsers> <
<browsers>
<browser refID="Default">
<controlAdapters>
<adapter controlType="System.Web.UI.Page" adapterType="Corelibrary.Adapters.PageStateAdapter" />
</controlAdapters>
<capabilities>
<capability name="requiresControlStateInSession" value="true" />
</capabilities>
</browser>
</browsers>
确保adapterType属性与为页状态适配器创建的类命名空间匹配
出于某种奇怪的原因,这段代码不仅仅适用于Chrome。当我说“不工作”时,我的意思是,页面加载很好,但viewstate却是一团混乱。然而在IE和Firefox中,视图状态很小,页面加载速度更快
我做的下一件事是在不同的用户代理下在Fiddler中加载页面,如果用户代理是chrome,则会出现同样混乱的视图状态
我已经多次检查代码,我编写了一个示例站点进行测试。这在铬上效果很好。我真的不知道该去哪里找。非常感谢您的帮助。我已经修好了。对于旧问题,代码正在清除所有适配器。我修改了它,以便修复程序只清除了需要的适配器。现在它可以正常工作了。我把它修好了。对于旧问题,代码正在清除所有适配器。我修改了它,以便修复程序只清除了需要的适配器。现在它可以正常工作了。所以问题是Request.Browser.Adapters.Clear在特定浏览器类型的代码中被调用。将你的答案标记为正确答案,然后继续
<browsers>
<browser refID="Default">
<controlAdapters>
<adapter controlType="System.Web.UI.Page" adapterType="Corelibrary.Adapters.PageStateAdapter" />
</controlAdapters>
<capabilities>
<capability name="requiresControlStateInSession" value="true" />
</capabilities>
</browser>
</browsers>