Asp.Net의 MVC는 AppHost의 행이ServiceStack 어떻게 MyController에 내 사용자 정의 IRepository <T> 속성을 autowire하기 수 <T>
:
ControllerBuilder.Current.SetControllerFactory(new FunqControllerFactory(container));
그래서이 내 코드
입니다public class BaseController<T>:Controller
{
protected IRepository<T> Repository {get;set;}
public ActionResult Detail(T t){}
}
public class CarController:BaseController<Car>
{
}
이 코드는 App.Host에서 사용합니다.
container.Register<IRepository<Car>>(c => new CarRepository());
어떻게하면 AutoWire Repository를 사용할 수 있습니까? , 당신은이 MVC PowerPack 당신에게 많은 혜택을 제공하는 대신 ServiceStackController에서 상속 할 수 있습니다 사용하는 경우 또한
public class BaseController<T>:Controller
{
public IRepository<T> Repository {get;set;}
public ActionResult Detail(T t){}
}
public class CarController:BaseController<Car> {}
:
예를 들어 다른 속성을 autowire하려면 어떻게해야합니까? XProvider 클래스에 XRepository가 있습니까? 추신 : 저는이 질문이 주요 질문과 밀접하게 관련되어 있기 때문에 여기에서 질문했습니다. – ozz
가장 큰 생성자와 모든 public 속성에는 IOC에 등록한 것과 동일한 유형의 인스턴스가 삽입됩니다. 자세한 내용을 보려면 https://github.com/ServiceStack/ServiceStack/wiki/The-IoC-container – mythz
Neihter container.RegisterAutoWiredAs>(); > (c => new XRepository());를 등록하십시오. container.RegisterAutoWired >(); 공장? –
ozz