Alireza_Salehi
چهارشنبه 27 دی 1385, 11:58 صبح
من یک GridView سفارشی درست کردم(با استفاده از TemplateField) که در قسمتی از آن یک Imagebutton وجود دارد زمانی که بر روی این دکمه کلیک می شود پیام خطای زیر را می دهد
Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[ArgumentException: Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.]
System.Web.UI.ClientScriptManager.ValidateEvent(St ring uniqueId, String argument) +366
System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +83
System.Web.UI.WebControls.ImageButton.RaisePostBac kEvent(String eventArgument) +52
System.Web.UI.WebControls.ImageButton.System.Web.U I.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +31
System.Web.UI.Page.RaisePostBackEvent(IPostBackEve ntHandler sourceControl, String eventArgument) +32
System.Web.UI.Page.RaisePostBackEvent(NameValueCol lection postData) +72
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3839
(البته در قسمت Page_Load از متد DataBind استفاده کردم
زمانی که به صورت زیر استفاده می کنم خطا نمی دهد که البته در این صورت Paging از کار می افتد!)
If Not Page.IsPostBack Then
...
gvSearch.DataBind()
...
End If
زمانی که از LinkButton استفاده می کنم این خطا را نمی دهد ، با Button هم همین خطا را می دهد!
در صورتی که EventValidation صفحه را غیر فعال نکنیم نحوه استفاده از ClientScriptManager.RegisterForEventValidation چگونه است؟
...
<asp:ImageButton runat="Server" ID="..." ImageUrl="~/..."
CommandName="Buy" CommandArgument='<%#EVAL("ID") %>'/>
...
Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[ArgumentException: Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.]
System.Web.UI.ClientScriptManager.ValidateEvent(St ring uniqueId, String argument) +366
System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +83
System.Web.UI.WebControls.ImageButton.RaisePostBac kEvent(String eventArgument) +52
System.Web.UI.WebControls.ImageButton.System.Web.U I.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +31
System.Web.UI.Page.RaisePostBackEvent(IPostBackEve ntHandler sourceControl, String eventArgument) +32
System.Web.UI.Page.RaisePostBackEvent(NameValueCol lection postData) +72
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3839
(البته در قسمت Page_Load از متد DataBind استفاده کردم
زمانی که به صورت زیر استفاده می کنم خطا نمی دهد که البته در این صورت Paging از کار می افتد!)
If Not Page.IsPostBack Then
...
gvSearch.DataBind()
...
End If
زمانی که از LinkButton استفاده می کنم این خطا را نمی دهد ، با Button هم همین خطا را می دهد!
در صورتی که EventValidation صفحه را غیر فعال نکنیم نحوه استفاده از ClientScriptManager.RegisterForEventValidation چگونه است؟
...
<asp:ImageButton runat="Server" ID="..." ImageUrl="~/..."
CommandName="Buy" CommandArgument='<%#EVAL("ID") %>'/>
...