高分求解“Base-64 字符数组的无效长度。”错误

ldljlq 2007-12-23 02:13:24
Base-64 字符数组的无效长度。

HttpMethod:POST
UserBrowserVersion:7.0
UserSystem:WinXP

System.FormatException: Base-64 字符数组的无效长度。 at System.Convert.FromBase64String(String s) at System.Web.UI.LosFormatter.Deserialize(String input) at System.Web.UI.Page.LoadPageStateFromPersistenceMedium()
=========================================

此问题频繁出现,找不到原因,我知道Base-64要求字符串长度必须是4的整数倍,可是我没有进行单独的加解密,从错误上看得出是在页面初始化载入StateView时出现的错误。而且不限于特定的页面,大部分页面都会出现此错误。
...全文
2063 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ldljlq 2007-12-23
  • 打赏
  • 举报
回复
开发人员在使用太大的视图状态方面碰到过一个问题,针对单独的字段基础浏览器可能不能反复地承载所有那些字节。由此造成的结果是,视图状态的内容被截断,而应用程序运行失败。在非常简单的Web浏览器上,诸如Microsoft WebTV和个人数字助理(PDA),非常有可能发生这种情况。在ASP.NET 1.x中要解决这个问题,只能采取不怕麻烦的方法。我们派生一个自定义的页面类,重写读写视图状态信息的方法,并使该类把视图状态信息保留在服务器上。在ASP.NET 2.0中,有一种更简单的解决方法:就是使用maxPageStateFieldLength。如果视图状态的真正大小超过该属性所设的上限,ASP.NET自动地将视图状态分割成块,并使用多个隐藏字段向下发送它。例如,如果把maxPageStateFieldLength设置为5,则页面包含以下内容:

<input type="hidden" id="__VIEWSTATEFIELDCOUNT" value="..." />

<input type="hidden" id="__VIEWSTATE" value="/wEPD" />

<input type="hidden" id="__VIEWSTATE1" value="wUKLT" />

<input type="hidden" id="__VIEWSTATE2" value="I2MjI" />

客户页面的最终字节计数即使比默认情况高一点儿,但是因为被分割的视图状态在简单的并且不是太强大的Web浏览器上,至少我们的页面不会失败。

===========================================================

看来.net1.1已经被MS放弃了,逼着我们转向更高的版本.今天看到了VS2008和.net3.5也出来了,这技术升级真的是一条没有终点的路.

weir55 2007-12-23
  • 打赏
  • 举报
回复
不知道友情帮顶
ldljlq 2007-12-23
  • 打赏
  • 举报
回复
回2楼:我的是.net1.1,不是2.0.
而且我的aspx文件中并没有设置enableViewStateMac属性
ldljlq 2007-12-23
  • 打赏
  • 举报
回复
早看过了,我没有用到自己写的加解密,而且从上面的错误明细上能看出明显是POSTBACK时将StateView还原出现的错误。
dmarkplus 2007-12-23
  • 打赏
  • 举报
回复
是encoding 的问题。

可能要改你的buffer size 大于被读的file size。

又或者该你的Encryption Algorithm

LZ 可以参考ViewStateEncryptionMode
kbryant 2007-12-23
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20060624/16/4841056.html

里面有回答,希望对你有帮助
内容概要:本文围绕“新能源发电接入弱电网的宽频带振荡机理及抑制方法”开展深入研究,结合Matlab编程与Simulink仿真平台,系统剖析新能源发电系统在弱电网条件下引发的宽频带振荡问题。研究聚焦于变流器控制动态、锁相环(PLL)频率耦合效应、序阻抗建模及其交互特性等关键因素,揭示振荡产生的内在机理。通过构建精确的数学模型与电磁暂态仿真模型,采用扫频分析法获取系统序阻抗特性,并结合奈奎斯特稳定性判据进行判别,验证理论分析的正确性。同时,提出针对性的抑制策略,如改进控制算法、引入阻尼补偿环节或优化控制器参数设计,以提升系统在弱电网环境下的稳定性。整个研究流程完整复现了博士论文级别的科研工作,具有较强的理论深度与工程应用价值。; 适合人群:适用于具备电力系统、电力电子或自动控制等相关专业背景,熟悉Matlab/Simulink仿真工具,正在从事新能源并网、电力系统稳定性分析、变流器控制策略研究的研究生、科研人员及电力行业工程技术开发者。; 使用场景及目标:①深入理解新能源并网系统在弱电网中发生宽频带振荡的物理本质与动态演化过程;②掌握基于频域阻抗法的系统稳定性建模与分析方法;③学习并复现高水平学术论文中的关键技术路线,提升独立科研能力与仿真建模水平;④为实际工程中新能源电站的并网稳定性问题提供理论依据与可行的抑制方案参考。; 阅读建议:建议读者结合文中提供的Matlab代码与Simulink仿真模型,逐步完成从阻抗建模、扫频仿真到稳定性判据应用的全过程实践,重点关注锁相环与电流环之间的动态耦合关系,并辅以相关文献深化对频域分析理论的理解,实现理论与仿真的深度融合。

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧