демо код, говорит сам за себя
interface I<T> { } class C { } class A : I<C> { } class B<T> { private readonly I<T> _i; public B(I<T> i) { _i = i; } } static void Main(string[] args) { using (var container = new UnityContainer()) { container.RegisterType<I<C>, A>(); B<C> b = container.Resolve<B<C>>(); Console.WriteLine("DONE"); } }