컨트롤러를 프로토 타입 (non singleton)으로 정의해야하는 My Asp.Net MVC 응용 프로그램에서 Spring.Net을 사용합니다. 요청 범위 (각 요청에 대한 새 개체)가 있어야하는 개체가 있습니다. 그들을 내 컨트롤러에 삽입하는 방법이 있습니까?"요청"범위를 가진 객체를 프로토 타입 객체에 삽입
<object type="xx.CompanyController, xx" singleton="false">
<property name="Service" ref="ServiceA" />
</object>
<object id="ServiceA" type="xx.ServiceA, xx" scope="request"/>
<property name="ObjectB" ref="ObjectB" />
</object>
<object id="ObjectB" type="xx.ObjectB, xx" scope="request"/>
마찬가지로 컨트롤러를 제외한 모든 개체는 싱글 톤으로 처리됩니다. ObjectB는 동일한 인스턴스를 공유해야하는 다른 개체에서 참조하는 프로토 타입이므로 안됩니다. 컨트롤러에서 singleton = "false"를 제거하고 추가 scope = "request"도 작동하지 않습니다 (컨트롤러는 싱글 톤으로 처리됩니다).
나는 MvcApplicationContext
나는 동일한 행동을 발견했습니다. 즉, ** request ** scope로 정의 된 객체는 ** singleton ** 객체의 종속성 인 경우 단일 범위로 "승격"됩니다. –