0

私はマークアップを持っています:

<asp:TextBox runat="server" ID="Accountname" />
<asp:CustomValidator runat="server" ControlToValidate="Accountname" OnServerValidate="Accountname_CheckUnique" meta:resourcekey="ACCOUNTNAME_UNAVAILABLE" />

分離コード:

protected void Accountname_CheckUnique(object source, ServerValidateEventArgs arguments)
{
    arguments.IsValid = Foo();     
}

これ問題なく機能していましたが、ページ上で何も変更することなく、ASP は次のように主張しています。

「Accountname_CheckUnique」のオーバーロードがデリゲート「System.EventHandler」と一致しません

MSDNによると、そうすべきではありません。遅くて疲れました。これを修正する方法を知っている人、または私の理解の明らかな欠陥を指摘してくれる人はいますか?

編集:

コードビハインドのイベントハンドラーとして += バインディングも試しましたが、それでも EventArgs 署名が必要です。作ります。も意味ない。

編集2:

ページを完全に削除して再作成 (コピー ペースト) すると、問題はなくなりました。ニッチなものが非常に局所的な問題を引き起こしたとします。

@MODS: 閉じてください。

4

1 に答える 1

0

Accountname_CheckUnique メソッド定義から "protected" を削除してください。

于 2010-04-15T16:00:47.973 に答える