Для Unity в абстракции контейнера Prism есть Register(Type type, Func<object> factoryMethod)
. Это должно делать именно то, что вы хотите:
containerRegistry.Register<IConfigReader>( () => new ConfigReader( "mySection" ) );
Но это только в Prism 8.
В Prism 7 используется исходный контейнер
containerRegistry.GetContainer().RegisterFactory( typeof(IConfigReader), x => new ConfigReader( "mySection" ) );
С Prism 6 и ранее это стало еще проще, потому что контейнер доступен сразу и его не нужно раскапывать:
Container.RegisterFactory( typeof(IConfigReader), x => new ConfigReader( "mySection" ) );