Может кто-нибудь помочь с лучшим способом возврата конкретной реализации в следующих сценариях.Скажем, у меня есть:
public interface IThing<TInput> where TInput : RequestBase
{
string Process(T input);
}
А затем несколько реализаций:
public class Thing1<T> : IThing<T> where T : ReqThing1
public class Thing2<T> : IThing<T> where T : ReqThing2
В моем классе вызова, каков наилучший способ обернуть конструкцию этих классов и вернуть нужный мне IThingчистым, проверяемым способом?Спасибо