Ho un contenitore Autofac e vorrei poter recuperare tutti i tipi di servizio registrati (non i tipi di implementazione, ma i tipi in cui sono registrati).Come ottenere tutti i tipi di servizio registrati in Autofac
Come posso ottenere queste informazioni da un IComponentContext
?
dovuto cambiare il Selezionare per un Dove, al fine di ottenere indietro un IEnumerable di servizi. var services = context.ComponentRegistry.Registrations.SelectMany (x => x.Services) .OfType() .Where (x => x.ServiceType); –
NovaJoe
@NovaJoe: Questo non è possibile: il tuo codice non verrebbe compilato, perché 'ServiceType' non è un' bool'. E non avrebbe comunque molto senso ... –
Spiacente, ho dimenticato una parte dell'istruzione: var services = container.ComponentRegistry.Registrations.SelectMany (x => x.Services) .OfType(). Dove (x => x.ServiceType == serviceType); Nota il controllo di uguaglianza per un tipo di servizio specifico. Inoltre, ho un contenitore al posto del contesto, che è un IContainer di AutoFac. –
NovaJoe