0

リピーターを使用していますが、ボタンをクリックした後にこのエラーが発生します (コマンドを使用)

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.

いくつかの調査を行ったところ、EnableViewState="false" を設定する必要があることを読みましたが、機能しませんでした。\

また、web.configファイルで試してみましたが、うまくいきませんでした。

updatepanel も使用: 同じ問題。

この種のエラーは何ですか?以前の ASP プロジェクトでは、設定を変更しなくても問題なく動作しました。

誰でも私を助けることができますか?

4

1 に答える 1

3

あなたのコードを見なくても、イベントが発生する前にコントロールのデータをバインドしていると思います (つまりPage_Load、イベント ハンドラー コードの前に呼び出されるため、 でのデータ バインディング)。

Page_Load次のように、ページがポストバックでない場合 (つまり、ページの最初のロードであり、イベント クリックからではない場合)にのみデータをバインドする必要があります。

if(!Page.IsPostBack)
{
    // Bind repeater data here
}

次に、イベント ハンドラー (つまり、コマンド クリック) の最後で、そのメソッドの最後の行またはユーザーのクリックに関連するロジックがあるメソッドの一部として、データを再バインドする必要があります。

于 2013-07-20T20:51:41.360 に答える