0
Unity의 automocking 확장을 쓰려고합니다.일반 형식 제약 조건 조건 논리
Windsor 하위 종속성 해결 프로그램과 RhinoMock을 사용하는 것이 훨씬 쉬울 지 모르지만 저는 사업부에서 Unity 및 Moq을 사용해야합니다.
Moq를 사용하는 기존 솔루션을 찾지 못했지만 이유를 발견했습니다. MOQ 어려운 유니티 확장을 만드는 단지 유형 매개 변수에서 모의 객체를 생성 할 수 없습니다와 내가 블록을 명중 IUnity 데코레이터를 시도하는 경우에 여기에 도착하면 :
public T Resolve<T>()
{
T instance;
try
{
instance = _container.Resolve<T>();
}
catch(ResolutionFailedException)
{
// if T is reference type
instance = new Mock<T>(MockBehavior.Loose).Object;
// else
// return default(T);
}
return instance;
}
문제가되는 MOQ의 제네릭 형식 제약 조건입니다 참조 유형.
질문은 조건부 논리가 컴파일러를 만족시키는 방식으로 가능한지 여부입니다.
아. 나는 MakeGenericType에 대해 몰랐다. 저건 완벽 해. 감사. –