2013-05-01 2 views
1

싱글 톤이 요구되는 클래스 라이브러리에 리포지토리 세트가 있습니다. 그들은 다른 클래스와 라이브러리를 공유합니다 - 싱글 톤으로 생성 된 클래스.정의 된 네임 스페이스의 모든 클래스에 Ninject.InSingletonScope() 사용

Ninject가 특정 기준 (예 : 특정 네임 스페이스에 정의 된)과 일치하는 모든 클래스에 대해 InSingletonScope()를 자동으로 사용하도록 구성 할 수 있습니까?

20 개에서 30 개까지의 리포지토리가 있으며 모든 저장소에서 InSingletonScope()를 호출해야합니다.

나는 할 수 있습니다 - 물론 - 반사하여이 작업을 수행하지만,이에 "자동 방식":

답변

3

: 검색 할 때

kernel.Bind(x => x 
    .FromThisAssembly() 
    .SelectAllClasses().InNamespaceOf<MyService>() 
    .BindAllInterfaces() 
    .Configure(b => b.InSingletonScope())); 
관련 문제