global.asaxの適切な使用方法を評価するためのヒントを集めましょう。Global.asaxを使用する場合の長所と短所は何ですか?
答えて
セッションとアプリケーションの初期化コードが非常に小さく、アプリケーション固有の場合は、使いやすいです。 URLの書き換え、リダイレクト、または認証のルールの設定など、コードを再利用する場合は、HttpModuleを使用すると便利です。 HttpModuleは、Global.asaxファイルのすべてをカバーすることができます。また、.configファイルを使用して簡単に削除して追加することもできます。
私は以前、アプリケーションレベルでエラーをキャッチし、ユーザーのセッションの有効期限が切れたときに何かを行うために使用しました。
また、web.configから値を読み取る静的プロパティを提供するために多く使用する傾向があります。
私はそれ以上のことはしませんが、そのようなものは大丈夫だと思います。
Global.asaxは、httpapplicationを継承する独自のクラスから継承できます。より多くのオプションを提供するだけでなく、大量のコードをクラスライブラリに入れることもできます。
EDIT:HttpApplicationクラス(global.asax parent)を別のクラスライブラリに置くと、再利用性も向上します。私はHttpModulesの使用が多くのタスクに適していることに同意しますが、これはまだ、よりクリーンなコードのために多くの用途があります。
Global.asaxは実際に使用していません。私はそれを古典的なASPでは常に使用していましたが、それは主にデータベース接続文字列などの特定の設定と関係していました。 .netの設定は、これらの多くのことをもっと簡単にします。
しかし、アプリケーションとセッションレベルのイベントを実装する場合は、これが必要です。
セッションの開始を取得し、開始をリクエストするのも良い点です。 nonasp.netスレッド(例えば、スレッドプールやカスタムスレッド)から送出された例外は、global.asaxハンドラをバイパスするので注意してください。個人的に私はいつも1つしか持っていませんが、私はそれを単に配管の一部と考えています。
- ASP.NET MVCを初期化しています。 :)
- カスタムユーザー認証。
- HttpApplicationを拡張するような依存性注入。
エラー処理などのためにGlobal.asaxを使用していましたが、これを置き換えるためにHttpModulesを使用して以来、global.asaxを編集せずに別のプロジェクトにコピーすることができます。
それは硬い飲み物で、あまり飲まないように注意してください。大丈夫です。
グローバルエラー処理とmvcでのルート設定に使用します。あなたはそこにグローバルなpage_initコードを書くことは望ましくありません。
アプリケーションレベルのイベントに固執し、それらのイベント中に呼び出されるクラスに実際にロジックのほとんどを実際に置くようにすると、グローバル構造を使用する上で問題はありません。
Global.asaxをHttpModuleと比較すると、特定のアプリケーションにあまりにも拘束されるため、再利用するのは難しいコードを書くことになります。
Global.asaxのSession_Start
イベントは、セッション変数を初期化するのにうってつけの良い場所です。
- 1. GWT:CellでEventBusを使用する場合の長所と短所
- 2. Scalaプロジェクトでsbtとmavenを使用する場合の長所と短所
- 3. Jadeのようなテンプレートエンジンを使用する場合の長所と短所は何ですか?
- 4. Sharepoint 2007でSql Serverデータベースを使用する場合、長所と短所
- 5. ロングポーリングと通常ポーリングの長所と短所は何ですか?
- 6. LinkedHashMapsとLinkedHashSetsの長所と短所は何ですか?
- 7. Azure Service FabricとカスタムAzure Cloudを利用する場合の長所と短所
- 8. javascriptの匿名メソッドの長所と短所は何ですか?
- 9. オブジェクトデータベースの長所と短所は何ですか?
- 10. triplestoreデータベースの長所と短所は何ですか?
- 11. 多重継承の長所と短所は何ですか?
- 12. 64ビット.NETの長所と短所は何ですか?
- 13. 長所と短所
- 14. Backbone.jsでヒゲを使うことの長所と短所は何ですか?
- 15. Node.jsテンプレート用のJadeとEJSの長所と短所は何ですか?
- 16. ハスケルの長所と短所
- 17. ストーリーボードの長所と短所
- 18. TreeSetの長所と短所
- 19. 長所と短所READ_COMMITTED_SNAPSHOT
- 20. ServiceBusアーキテクチャ長所と短所
- 21. UILabel drawTextInRect長所と短所
- 22. 長所と短所Celery対RQを使用する
- 23. DFCとDFSの長所と短所は?
- 24. StyleCop、長所/短所
- 25. 蟻に対する布の長所と短所は何ですか?
- 26. 1つのプロジェクトでAngularJS + jQuery Mobileを使用する場合の長所と短所
- 27. newid()とnewsequentialid()の違いと長所と短所は何ですか?
- 28. Delroyed JobとHerokuのRabbitMQの長所と短所は何ですか?
- 29. Webサービスのセキュリティ:WSE3.0とWCFの長所と短所は何ですか?
- 30. HttpContextベースのキャッシュとSystem.Runtime.Cacheの長所と短所は何ですか?
個人的に、私はglobal.asaxタグが必要とは思わない... –
十分に、私はそのコメントも削除します – Larsenal