Pregunta

¿Tiene Ninject y el método equivalente para registerInstance de la unidad.

Quiero crear un objeto de burla y registrarlo.

Gracias

¿Fue útil?

Solución

Aquí está la respuesta simple

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

Así que aquí hay un ejemplo usando Moq:

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

Bono de respuesta:

Me parece que algunas personas son en realidad sólo buscan crear una instancia singleton de una clase particular, en lugar de realmente crear ellos mismos (esto permite que el objeto que se crea cuando algo lo solicite, en lugar de cuando se está construyendo su contenedor) . Esto se hace así:

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

En su caso, ya que dijo la palabra "simulacro", yo asumiría que querría el primer lugar de la segunda respuesta, pero es una buena cosa para saber.

Otros consejos

No está seguro de qué tipo de herramienta de burla, en su caso, o la versión de Ninject que está utilizando; Sin embargo, vale la pena mencionar que Ninject 2 tiene una extensión por ello que proporciona integración con Moq - http: // github.com/enkari/ninject.moq.

Me di cuenta que no responde directamente a su pregunta, Anderson lo hace tan bien, pero pensó que podría ser relevante de todos modos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top