У меня есть рабочее решение. Не знаю, является ли это «предпочтительным» способом, поэтому, если у кого-то есть идея получше, пожалуйста, дайте мне знать:)
Вот что я сейчас использую:
container.Register<ITypeResolver>(s => new LightInjectTypeResolver(s));
А вот класс, реализующий ITypeResolver
:
public class LightInjectTypeResolver : ITypeResolver
{
private readonly IServiceFactory _serviceFactory;
public LightInjectTypeResolver(IServiceFactory serviceFactory)
{
_serviceFactory = serviceFactory;
}
public object GetType(Type entity)
{
return _serviceFactory.GetInstance(entity);
}
}