¿Cómo obtengo un nuevo objeto usando Ninject como en este ejemplo?

Necesito agregar un elemento de tipo IVehicle que se inyecta en tiempo de ejecución desde el constructor a un bucle for.

IVehicle vehicle;

for (int i=0;i<=someValue;i++)
{
   list.insert(i,vehicle);
   //some processing to assign values
}

ahora porque Ivehicle ya está inyectado para este momento, mi lista tiene el mismo valor a pesar del valor en vista diferente y que viene a través del controlador. ¿Cómo puedo renovar este objeto cada vez?

EDITAR

La mejor manera de renovar este objeto cada vez que encontré fue solicitar nuevo desde el núcleo que lo estaba inyectando. Estoy usando Ninject como se dijo anteriormente.

Todo lo que hice fue crear una variable de tipo IKernel y conseguí que el constructor lo inyectara y luego usé kernel.Get () para obtener una nueva instancia. No sé si esta es la mejor manera de hacerlo, ya que mi constructor es realmente codicioso. :)

Ikernel privado _kernel;

inyecte esto en el constructor, no necesita hacer ningún enlace ya que Ninject ya lo sabe.

entonces puede usar el _kernel para obtener nuevos, usando _kernel.Get <> ().

Espero que esto ayude a alguien..

Respuestas a la pregunta(1)

Su respuesta a la pregunta