Хабр Курсы для всех
РЕКЛАМА
Большая витрина: от крупнейших школ до частных авторов. Сравнивайте по цене, длительности, формату и выбирайте самый подходящий курс!
Если реализция может изменяться в runtime, то можно повторно вызывать RegisterType/RegisterInstance — это затрёт предыдушее значение в IoC контейнере. Так не пробовали?
IService svc1 = uc.Resolve<IService>("database");
IService svc2 = uc.Resolve<IService>("memory");
var svc = svc1 ?? svc2;
var svc = uc.ResolveAll<IService>().FirstOrDefault(s => s != null);
Расширение возможностей Unity