Articles of dipendenza iniezione

DAL -> BLL <- GUI + composizione radice. Come impostare DI-bindings?

Ho creato un’applicazione a tre livelli con rifrazioni come descritto in questa risposta : DAL with Repositories -> BLL with services and IRepository <- Asp.net mvc-app Per farlo funzionare con l’iniezione delle dipendenze vedo alcune opzioni: 1. Aggiungere un riferimento a DAL dall’app Web per poter impostare le associazioni all’avvio dell’applicazione. 2. Utilizzare un contenitore […]

Iniezione delle dipendenze e modello Singleton Design

Come identificare quando utilizzare l’iniezione di dipendenza o il modello di singleton. Ho letto molti siti web in cui si dice “Usa l’iniezione della dipendenza su un modello singleton”. Ma non sono sicuro di essere totalmente d’accordo con loro. Per i miei progetti di piccola o media scala vedo sicuramente l’uso del modello singleton semplice. […]

Quali “cose” possono essere iniettate in altri in Angular.js?

Sto avendo un po ‘di difficoltà a comprendere l’iniezione di dipendenza in angular. Quindi la mia domanda è: qualcuno può spiegare quale dei “tipi”, come Controller, Factory, Provider, ecc. Possiamo iniettare in altri, incluse altre istanze dello stesso “tipo”? Quello che sto cercando in realtà è questa tabella piena di y / n. Per le […]

Come funziona Spring @Autowired

Mi sono imbattuto in un esempio di @Autowired public class EmpManager { @Autowired private EmpDao empDao; } Ero curioso di sapere come il empDao ottenga i set dato che non ci sono metodi setter ed è privato.

Posso passare i parametri del costruttore al metodo Resolve () di Unity?

Sto usando Microsoft Unity per l’iniezione delle dipendenze e voglio fare qualcosa del genere: IDataContext context = _unityContainer.Resolve(); var repositoryA = _unityContainer.Resolve(context); //Same instance of context var repositoryB = _unityContainer.Resolve(context); //Same instance of context IDataContext context2 = _unityContainer.Resolve(); //New instance var repositoryA2 = _unityContainer.Resolve(context2); RepositoryA e RepositoryB hanno entrambi un costruttore che accetta un parametro […]

Unity Inject le dipendenze nella class di filtro MVC con i parametri

Sto usando un’iniezione di dipendenza di Unity.MVC4 per accedere ai miei servizi. Tutto funziona come dovrebbe quando si esegue l’iniezione nel mio costruttore di Controller, ma quello che vorrei fare ora è usare l’ iniezione di proprietà nella mia class filtro in modo da poter accedere al mio database dall’interno. Prima di iniziare questa domanda […]

Unità dell’iniezione delle dipendenze – Risoluzione condizionale

La risoluzione condizionale è l’ultima cosa che non capisco al momento. Diciamo che abbiamo un’interfaccia IAuthenticate : public interface IAuthenticate{ bool Login(string user, string pass); } Ora ho due tipi di autenticazione. Autenticazione di Twitter public class TwitterAuth : IAuthenticate { bool Login(string user, string pass) { //connect to twitter api } } Autentica di […]

Come iniettare in @FacesValidator con @EJB, @PersistenceContext, @Inject, @Autowired

Come posso iniettare una dipendenza come @EJB , @PersistenceContext , @Inject , @AutoWired , ecc in un @FacesValidator ? Nel mio caso specifico ho bisogno di iniettare un bean gestito da Spring tramite @AutoWired : @FacesValidator(“emailExistValidator”) public class EmailExistValidator implements Validator { @Autowired private UserDao userDao; // … } Tuttavia, non è stato iniettato e […]

ServiceLocator è un anti-pattern?

Recentemente ho letto l’articolo di Mark Seemann sull’anti–pattern di Service Locator. L’autore sottolinea due motivi principali per cui ServiceLocator è un anti-pattern: Problema di utilizzo dell’API (che sto perfettamente bene con) Quando la class utilizza un Localizzatore di servizi è molto difficile vedere le sue dipendenze poiché, nella maggior parte dei casi, la class ha […]

Metodo di fabbrica con DI e IoC

Conosco questi schemi ma non so ancora come gestire la seguente situazione: public class CarFactory { public CarFactory(Dep1,Dep2,Dep3,Dep4,Dep5,Dep6) { } public ICar CreateCar(type) { switch(type) { case A: return new Car1(Dep1,Dep2,Dep3); break; case B: return new Car2(Dep4,Dep5,Dep6); break; } } } In generale il problema è con la quantità di riferimenti che devono essere iniettati. […]