一部のデータ操作を処理するビジネス層を持つ Web プロジェクトがあります。Session
メソッドを実行する前に、有効な終了していないアクティブがあるかどうかを確認して、一部またはすべてのメソッドを保護したいと思います。
最初はAttribute
オーバークラスを使おうと思ったのですが、うまく動かせませんでした。クラスは通常のクラスであり、から派生したものではないためSystem.Web.Page
。必要な BL インスタンスが呼び出されたときに属性クラスが実行されることはありません。さらに、一部のメソッドは有効なセッションを必要としない場合があるため、クラス全体で完全なセキュリティが必要ない場合があります。また、メソッドの開始ごとにセッションをチェックする行を追加することは、あまり有望ではないように思えます。
なぜ方法で保護する必要があるのかと聞かれたら、次のように説明できます。
- これはウェブプロジェクトです
- 人はそれを埋めることから始めるかもしれませんが、その瞬間にそれを保存することはありませんでした
- その画面は約30分待ちます
- セッションはすでに終了しています
- ユーザーはコンピューターの前に戻り、[保存] ボタンをクリックしますが、プロセスは完了しません。
保存操作は簡単にDELETE
操作またはSELECT
.
フォームなどの TYPE がたくさんあるのでBL.ItemManager
、BL.VideoManager
、BL.ServiceManager
などがあります。これらのクラスの内部には、save、delete、select メソッドがたくさんあります。
したがって、プロセスを実行する前にセッションをチェックして、いくつかのメソッドを保護するためのきちんとした方法はありますか?