0

ログインページにasp.netで正規表現バリデーターc#を使用しています.学生、講師、管理者用に異なるログインページがあります.ログインIDはそれぞれ1RNxxCSxxx、1RNLECSxxx、1RNADCSxxxの形式です(x桁)私の問題それはテキストボックスを検証し、エラーメッセージを表示します..しかし、それはまだnログインを続けます..私のコードは..

    <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"       ControlToValidate="TextBox1" ErrorMessage="Enter in 1RNxxCSxxx format" ValidationExpression="[1][R][N][0-9][0-9][C][S][0-9][0-9][0-9]"></asp:RegularExpressionValidator>

つまり、学生のログインページに講師IDを入力すると、エラーメッセージが表示されてもログインできます..どんな助けでも大歓迎です.thank u

4

1 に答える 1

1

テキストボックスの名前から、カスタム ログイン ロジックを使用しているようです。アプリケーション全体を保護する上でより堅牢なメンバーシップ プロバイダーの使用を検討することをお勧めします。aspnetdb 以外のデータベースでメンバーシップを構成する方法を確認してください。

あなたの差し迫った問題については、ユーザーをログインさせる方法で、ページが有効かどうかを確認してください。

if( !Page.IsValid )
{
     return;
}

詳細については、こちらをご覧ください: このリンク

また、正規表現が正しくありません。マッチを成功させるには、以下を使用します。

^1RN([0-9]{2}|LE|AD)CS[0-9]{3}$

上記の式は、文字列が 1RN で始まる (^ は開始を意味する) 必要があることを示しています。

于 2013-04-25T10:43:51.497 に答える