錯誤訊息:「無效的回傳或回呼引數。已在組態中使用 <pages enableEventValidation="true"/> 或在網頁中使用 <%@ Page EnableEventValidation="true" %> 啟用事件驗證。基於安全性理由,這項功能驗證回傳或回呼引數是來自原本呈現它們的伺服器控制項。如果資料為有效並且是必需的,請使用 ClientScriptManager.RegisterForEventValidation 方法註冊回傳或回呼資料,以進行驗證。」


我會遇到這個問題,是因為在程式中使用了 GridView,
每次執行 Page_Load 事件時都會 Bind 資料到這個 GridView,
遇到 PostBack 時就會觸發上述的錯誤。

 

 

解決這個錯誤訊息的辦法是,在 Page_Load 事件中檢查是否為 PostBack,
若否,才將資料綁到 GridView 上頭。例如以下這樣:



protected void Page_Load(object sender, EventArgs e)
    {
        // 取得 GridView 內容
        if (!IsPostBack)
        {
            data_bind();    // 自訂的 GridView databind函式
        }
    }

創作者介紹
創作者 fannys23 的頭像
fannys23

小攻城師的戰場筆記

fannys23 發表在 痞客邦 留言(0) 人氣()