MVVM SimpleIoc, как использовать интерфейс, когда реализация интерфейса требует параметров конструкции

Используя SimpleIoc MVVM, я хотел бы зарегистрировать реализацию для данного интерфейса, но реализация требует одного параметра в своем конструкторе:

public class MyServiceImplementation : IMyService {
    public MyServiceImplementation(string contructorString) { ... }
}

Я надеялся, что регистрация реализации интерфейса сработает, но SimpleIoc не учитывает подсказку, когда пытается разрешить интерфейс.

SimpleIoc.Default.Register<MyServiceImplementation>(() => {
    return new MyServiceImplementation("Hello World");
});

SimpleIoc.Default.Register<IMyService, MyServiceImplementation>();

Будет ли способ сделать это с помощью SimpleIoc, или мне следует рассмотреть возможность использования более полного Ioc?

Редактировать: Это помогает, но мне все еще интересно, почему форма выше не работает.

SimpleIoc.Default.Register<IMyService>(() => {
    return new MyServiceImplementation("Hello World");
});
19
задан AxelEckenberger 18 January 2012 в 08:40
поделиться