private void RegisterViewModels(ContainerBuilder builder) { var typesProvider = new RegisteredNavigationTypesProvider(); var typeRegistrations = typesProvider.GetRegistrations <ViewModelRegistrationAttribute>("RemoteNotes.UI.ViewModel"); foreach (var typeRegistration in typeRegistrations) { builder.RegisterType(typeRegistration.Type).Named <BaseViewModel>(typeRegistration.Tag).ExternallyOwned(); } builder.Register(c => new ViewModelNavigationTypeHolder(typeRegistrations)); }
private void RegisterPages(ContainerBuilder builder) { var typesProvider = new RegisteredNavigationTypesProvider(); var typeRegistrations = typesProvider.GetRegistrations <PageRegistrationAttribute>("RemoteNotes.UI.Control"); foreach (var typeRegistration in typeRegistrations) { builder.RegisterType(typeRegistration.Type).Named <Page>(typeRegistration.Tag).ExternallyOwned(); } builder.Register(c => new PageNavigationTypeHolder(typeRegistrations)); }