2011-07-25 6 views
1

ユーザにログインするためのusercontrolを持つASP.NETページがあります。このコントロールはすべてのページに表示され、default.aspxを除くすべての場所で動作します。 default.aspxでそのページをクリックすると、ページは同じページにポストバックされ、404が返されます。要求トレースが失敗しても何も表示されないようです。ボタンのコードは次のとおりです。ボタンはdefault.aspx以外のどこでも動作します

<asp:Button ID="Button1" runat="server" Text="Sign In" OnClick="btnLogin_Click" /> 

これはうまくいかない理由はありません。

答えて

1

ログイン時にdefault.aspxにリダイレクトされている可能性があります。これはデフォルトにリダイレクトされているためdefault.aspx上に置かれているために途切れるため、他の場所でも動作します。

デバッグモードでログインリダイレクト機能を確認し、正確に何が起きているかを確認してください。

+0

ボタンのハンドラは呼び出されていないため、リダイレクトに問題が発生することはありません(とにかくリダイレ​​クトはありません)。 – Echilon

+0

それからlogin.Clickイベントハンドラに当たる前にdefault.aspxに何かがあります。可能であれば、他のものをすべて削除し、ユーザーコントロールを確認してから、他のものを1つ前に追加してください。 –

0

レンダリングされたソースで複数のフォームを探し、ボタンがフォーム内に表示されていることを確認します。これはポストバックに多くの問題を引き起こす可能性があります。

もっと明確にする。ネストされたフォームはありません。 Asp:ポストバックを使用するボタンや何かは、ページのの単数で入れ子になっていないフォームの中になければなりません。

関連する問題