ASP.NET MVCアプリケーションにConcurrentQueueオブジェクトを実装したいと思います。 ConcurrentQueueオブジェクトはセッション間で共有されるため、一度作成する必要があります。 ASP.NET MVCでConcurrentQueueを作成する最も良い場所は何ですか?ASP.NET MVCでグローバルオブジェクトを作成するのに最適な場所
4
A
答えて
7
どのクラスでもインスタンスを保持することができますが、キューがどのような機能を担っているかをクラス内で結合するのが最も理にかかります。
例えばCacheクラス:
public class MyCache
{
public static ConcurrentQueue Queue { get; private set; }
static MyCache()
{
Queue = new ConcurrentQueue();
}
}
これはそれMyCacheというクラスが使用されている最初の時間を初期化します。細かい粒度制御が必要な場合は、Global.asax.csファイルがアプリケーションの起動時に呼び出すInitialize
メソッドを作成することができます。
2
ファイルGlobal.asax.cs
,protected void Application_Start()
メソッドオーバーロード。
もう1つの方法は、シングルトン/静的クラスを作成することです。
3
あなたは可能性:
- いくつかのコードが実際にタイプ
- のGlobal.asaxを使用した場合にのみ作成されていますので、静的コンストラクタでそれを作成します。
- 使用WebActivator - Global.asaxファイルを汚染しないで、別のアセンブリでキューを作成できます。
関連する問題
- 1. asp.net mvcでhtmlをレンダリングするのに最適な場所
- 2. asp.net mvcレイアウトロジックの最適な場所はどこですか
- 3. ASP.NET MVCを置くのに最適な場所は何ですかFormMembershipProvider
- 4. ASP.Netでイベントを登録するのに最適な場所
- 5. asp.netアプリケーションでaspxファイルをアップロードするのに最適な場所
- 6. リポジトリを使用する場合、ASP.NET MVCのビジネスロジックに最適な場所は何ですか?
- 7. IOS/SQLLite:データベースを作成するのに最適な場所です
- 8. ASP.NET MVCでバグを報告するのに最適な場所は何ですか?
- 9. ADO.NETを使用して子レコードを作成するのに最適な場所
- 10. asp.net mvcアプリケーションに静的ファイルを配置する最適な場所は何ですか?
- 11. MVCでイベントをトリガする最適な場所は何ですか?
- 12. ASP.NET MVCのバンドルファイルの場所
- 13. 私のIRouteConstraintの実装をASP.NET MVCに入れるのに最適な場所は?
- 14. ASP.NET MVCプロジェクトランダムな場所へのAutomaicルート
- 15. SSISの学習に最適な場所
- 16. ApostropheCMSで解析を追加するのに最適な場所
- 17. アンドロイドチェックインターネット接続に最適な場所
- 18. Codeigniterの最適化/モデルをロードするのに最適な場所は?
- 19. Mac OSXのデータベースファイルの最適な場所
- 20. pythonパッケージのlog.confの最適な場所
- 21. グローバルオブジェクトの作成?
- 22. アレイをLaravelに保存するのに最適な場所
- 23. ライブラリをマゼンタに配置するのに最適な場所
- 24. ZF2にカスタムインターフェイスを保存するのに最適な場所
- 25. レール用のアクセストークンを格納するのに最適な場所
- 26. 環境変数を格納するのに最適な場所
- 27. ビッグXMLデータを保存するのに最適な場所
- 28. UITableViewCell - セルを設定するのに最適な場所
- 29. ナビゲーションバーボタンを追加するのに最適な場所は?
- 30. ActionScript 3イベントをバインドするのに最適な場所
ここで、コードから後でアクセスするためにConcurrentQueue変数を宣言する必要がありますか? – Tomas
'Global.asax.cs'アプローチでは、直接Global.asax.csにあります。例えば、Application_startの上の1行は、' public static ConcurrentQueue Queue {get;プライベートセット; } 'を呼び出し、Application_Startで初期化します。 Singleton-staticクラスについては、@ChrisS answerを参照してください。 –