Domanda

La Ninject hanno e metodo equivalente per registerInstance di unità.

Voglio creare un oggetto fittizio e registrarlo.

Grazie

È stato utile?

Soluzione

Ecco la risposta semplice

Bind<IMyType>().ToConstant<MyType>(new MyType());

Quindi, ecco un esempio con Moq:

var mock = new Mock<IMyType>();
//Setup your mock expectations / etc here.
//...
Bind<IMyType>().ToConstant(mock.Object);

Bonus risposta:

Trovo che alcune persone sono in realtà solo cercando di creare un'istanza di Singleton di una particolare classe, piuttosto che in realtà la creazione di loro stessi (questo permette l'oggetto da creare quando qualcosa lo richiede, piuttosto che quando si sta costruendo il vostro contenitore) . Questo viene fatto in questo modo:

Bind<IMyType>.To<MyType>().Using<SingletonBehavior>();

Nel tuo caso, dal momento che hai detto la parola "finto", mi piacerebbe che ci si vuole assumere la prima piuttosto che la seconda risposta, ma è una buona cosa da sapere.

Altri suggerimenti

Non so che tipo di strumento beffardo, se del caso, o versione di Ninject si sta utilizzando; tuttavia, vale la pena ricordare che Ninject 2 ha un'estensione per esso che fornisce l'integrazione con Moq - http: // github.com/enkari/ninject.moq .

Mi rendo conto che questo non risponde direttamente alla tua domanda, Anderson fa molto bene, ma pensato che potrebbe essere rilevante in ogni caso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top