ASP 開発では、if...else 判定の大きなセクションを使用することがありますが、それが動的な Response.write コンテンツであり、コードを読みやすくしたい場合は、Response.End() を使用できます。 ASP の実行を終了します。Break の使用法に似ています。
ASP 開発では、if...else 判定の大きなセクションを使用することがありますが、それが動的な Response.write コンテンツであり、コードを読みやすくしたい場合は、Response.End() を使用できます。 ASP の実行を終了します。これは、次のような Break の使用法に似ています。
次のようにコードをコピーします。if (userid=) または (password=)
Response.Write(<script lanuage=javascript>alert('ユーザー名またはパスワードが空です!');location.href='../default.asp';</script>)
Response.End() ' ここで終了が中断されます。 以下は、データベースが空でない場合に、n 行のコードを省略して読み取る操作です。
このようにして、受信したユーザー名またはパスワードが空の場合、プロンプト情報が自動的に書き込まれ、Response.End() がプログラムを中断して if に到達します。 。 。他の人の役割。
また、Response.End を使用する場合は、次のようにプログラムを毎日デバッグするときです。
次のコードを実行せずに、結合された SQL ステートメントを出力するには、次のようにします。
次のようにコードをコピーします。sql=select * from userinfo
応答.書き込み(SQL)
応答.End()
rs.open sql ,conn,1,1 'この文は実行されません
Response.End() を追加する場所が多すぎて、正式リリース時にコメントアウトするのが難しい場合は、次のコードのような関数でカプセル化できます。
次のようにコードをコピーします。サブデバッグ()
Response.End()
エンドサブ
上記のコードは次のように変更されます。
次のようにコードをコピーします。sql=select * from userinfo
応答.書き込み(SQL)
デバッグ()
rs.open sql ,conn,1,1 'この文は実行されません
このように、正式リリース時には関数 debug 内の文をコメントアウトすることでデバッグの役割を果たすことができますが、これにも問題があり、あまりにも debug() を使いすぎるとプログラムが実行できなくなる可能性があります。デバッグ中に指示に従ってください。場合によっては、これらの場所で実行を中断したくない場合があるため、次のように debug() 関数を再構築してみましょう。
sub debug(isBreak) 'isBreak はブール値を持つパラメータです。true に設定されている場合、isBreak then Response.End() endend sub は割り込み処理を実行しません。
使用時のコードは次のとおりです。
次のようにコードをコピーします。sql=select * from userinfo
応答.書き込み(SQL)
デバッグ(偽)
rs.open sql,conn,1,1 'この文が実行されます rs.close()
sql=製品から * を選択
応答.書き込み(SQL)
デバッグ(真)
rs.open sql,conn,1,1 'この文は実行されません
これは基本的に割り込み制御のニーズを満たすことができますが、実際にはまだ非常に不完全であり、さらに多くのデバッグ要件を満たす必要がある可能性があります。実際、プログラム開発は、リファクタリング、リファクタリング、リファクタリングのプロセスです。そうでなければ、非常に多くの設計パターンが存在することになります。これらはすべて、先人たちが実際の開発とリファクタリングのプロセスから得た経験をまとめたものであり、学ぶ価値があります。