Я пытаюсь разрешить тип, полученный в объекте, используя контейнер Unity, основываясь на string
или int
, которые я получу в этом объекте.Так что я могу реализовать логику на основе типа.Ниже я попытался зарегистрироваться в Unity, но при использовании typeof()
в контейнере Unity я получаю сообщение об ошибке, в котором говорится, что я не могу это зарегистрировать.это с помощью единства?
public interface IActionResolver
{
void Resolve(object item);
}
public class StringResolver : IActionResolver
{
public void Resolve(object item)
{
}
}
public class IntResolver : IActionResolver
{
public void Resolve(object item)
{
}
}
И в Unity я пытался зарегистрироваться, как это ..
unityContainer.RegisterType<IActionResolver, StringResolver>(typeof(string));
unityContainer.RegisterType<IActionResolver, IntResolver>(typeof(int));