Как использовать DryIoc для инжектора конструктора в Windows Phone 8 PhoneApplicationPage?
Я попробовал конструктор инъекций таким образом:
public partial class MainPage : PhoneApplicationPage
{
private readonly ISomeService service;
public MainPage(ISomeService service)
{
InitializeComponent();
this.service = service;
}
}
в App.xaml.cs
конструктор:
public App()
{
// Global handler for uncaught exceptions.
UnhandledException += Application_UnhandledException;
DependencyService.Initialize(GetAssemblyFilePathCollection());
DependencyService
.Container
.Register(typeof(MainPage), made: Made.Of(() => new MainPage(Arg.Of<ISomeService>())));
// The remaining part is omitted.
}
DependencyService
мой пользовательский статический класс, который создает Container
и загружает привязки со всех сборок.
В этом случае App.RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
Метод всегда выполняется:
e.Exception
этоSystem.MissingMethodException
с сообщениемNo parameterless constructor defined for this object.
e.Uri
является/MainPage.xaml
как заявлено вWMAppManifest.xml
подать какNavigationPage
,
Внутри MainPage
Конструктор Я могу разрешить службу успешно с помощью контейнера напрямую, но я хочу использовать конструктор инъекций.
Я не нашел конкретного примера для этого. Кто-нибудь есть идеи, как это работает?