ASP.NET MVC 애플리케이션에 ConcurrentQueue 객체를 구현하고 싶습니다. ConcurrentQueue 객체는 세션간에 공유되므로 한 번 만들어야합니다. ASP.NET MVC에서 ConcurrentQueue를 만드는 가장 좋은 장소는 무엇입니까?ASP.NET MVC에서 글로벌 객체를 생성하는 가장 좋은 장소
4
A
답변
7
모든 클래스는 인스턴스를 보유 할 수 있지만 대기열이 사용되는 기능을 담당하는 클래스 내에서 결합하는 것이 가장 적합합니다.
예를 들어 캐시 클래스 :
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()
과부하
또 다른 접근법은 싱글 톤/정적 클래스를 만드는 것입니다. 당신은 할 수
3
:이 일부 코드가 실제로 유형
- 는, 정적 생성자를 만듭니다.
- WebActivator - Global.asax 파일을 오염시키지 않고 다른 어셈블리에서 큐를 만들 수 있습니다.
관련 문제
- 1. asp.net mvc에서 html을 렌더링하는 가장 좋은 장소
- 2. MVC에서 사용자 만료를위한 가장 좋은 장소
- 3. ASP.NET MVC에서 보고서를 만드는 가장 좋은 방법
- 4. ASP.NET MVC에서 버그를보고하는 가장 좋은 장소는 무엇입니까?
- 5. Spring MVC에서 글로벌 모델 속성을 설정하는 가장 좋은 방법은 무엇입니까?
- 6. ASP.Net에서 이벤트를 등록하는 가장 좋은 장소
- 7. JavaScript 객체를 생성하는 ASP.NET
- 8. ASP.NET MVC에서 ViewPage에 여러 객체를 전달하려면 어떻게해야합니까?
- 9. asp.net 응용 프로그램에서 aspx 파일을 업로드하는 가장 좋은 장소
- 10. asp.net mvc에서 글로벌 인증을 얻는 방법
- 11. ASP.NET MVC 애플리케이션에 도메인 객체를 배치하기 가장 좋은 장소는 무엇입니까?
- 12. ASP.NET : 글로벌 리소스를 관리하는 가장 좋은 방법은 무엇입니까?
- 13. ASP.Net MVC에서 PDF 및 Excel 파일을 생성하는 가장 좋은 방법은 무엇입니까
- 14. Partials를위한 ViewModels을 채우기위한 가장 좋은 장소?
- 15. 조건을 확인하고 리디렉션하는 가장 좋은 장소
- 16. Java 구성 정보를 저장하는 가장 좋은 장소
- 17. C++ : 헤더 파일을 포함하기에 가장 좋은 장소
- 18. moodle - 일반적인 로직을 넣는 가장 좋은 장소
- 19. Drupal : drupal_goto를 넣을 수있는 가장 좋은 장소
- 20. viewController에서보기 위해 그림자를 추가하는 가장 좋은 장소
- 21. 시작하기에 가장 좋은 장소 Qt 데이터베이스 인터페이스
- 22. 아이폰 앱에서 가장 좋은 시간/장소
- 23. 글로벌 웹 사이트 설정을 저장하는 가장 좋은 장소는 어디입니까
- 24. asp.net mvc에서 이미지를 db로 업로드하는 가장 좋은 방법은 무엇입니까?
- 25. Asp.net MVC에서 세션 변수에 액세스하는 가장 좋은 방법은 무엇입니까?
- 26. ASP.Net MVC에서 대화 상자에서 업데이트를 수행하는 가장 좋은 방법은 무엇입니까?
- 27. 사용자가 asp.net mvc에서 인증되었는지 확인하는 가장 좋은 곳은
- 28. ASP.NET MVC에서 전역 오류/예외 처리에 가장 좋은 방법은 무엇입니까?
- 29. ASP.NET MVC에서 IRouteConstraint 구현을 배치하기 가장 좋은 장소는 무엇입니까?
- 30. Asp.net MVC에서 HTML 전자 메일을 보내는 가장 좋은 방법은 무엇입니까?
어디에서 ConcurrentQueue 변수를 선언해야 나중에 코드에서 액세스 할 수 있습니까? – Tomas
'Global.asax.cs '접근법 - Global.asax.cs에서 직접적으로, 예를 들어 Application_start 위의 한 줄은 public static ConcurrentQueue Queue {get; 개인 집합; }'그리고 Application_Start에서 초기화하십시오. 싱글 톤 정적 클래스의 경우 @ChrisS answer를 참조하십시오. –