只能在执行Render() 的过程中调用 RegisterForEventValidation;

今天在做页面保存word的时候点击下载出现

只能在执行Render() 的过程中调用 RegisterForEventValidation;

EnableEventValidation属性是 .NET Framework 2.0 中是新增的属性,默认的情况下该属性的值为true;通过这个新增的功能ASP.NET会检查 POST方法中的所带的参数,如果认为不合法,就会抛出异常。这个设计的目的是为了防止恶意用户利用post 方法发送一些恶意数据,但是有时也会出现类似上面的错误。

只要禁止这个功能,问题就能得到解决。可以通过以下两种途径解决:
1、在Web.Config文件中:在<system.web></system.web>标记中添加如下代码:
<system.web>
      <pages enableEventValidation="false"> </pages>
 </system.web>
2、在具体的.aspx页面的源代码中修改代码,如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="preview.aspx.cs" Inherits="Maticsoft.Web.personal.preview"
    EnableViewState="false" EnableEventValidation = "false"%>
原文地址:https://www.cnblogs.com/freexiaoyu/p/1852120.html