我有点困惑。我尚未明确设置Web.config <pages ViewStateEncryptionMode="Always" />
,因此this MSDN page表示应默认为Auto
。 This MSDN page说,如果控件通过调用Auto
方法请求加密,则RegisterRequiresViewStateEncryption
应该导致对 View 状态信息进行加密。但是,我的控件都没有调用该方法。因此,看来我的viewstate实际上不应该加密。
但是,当我将viewstate复制/粘贴到各种online viewstate decoders之一中时,会被告知该Viewstate序列化数据无效。那么,我的viewstate是否已加密?有什么明显的方法可以告诉吗?除非您将默认状态更改为默认状态,否则是否已将默认ASP.net行为更改为通过defualt编码 View 状态?
最佳答案
如果将其设置为Always或auto,则所有控件状态都将被加密。所有调用RegisterRequiresViewStateEncryption
View 状态的控件将被加密,而与Auto/Always无关。如果您的“自定义控件”需要加密,请调用此按钮。
在MSDN上看到这个
关于asp.net - 我的VIEWSTATE是否已加密?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6343028/