DI constructeur avec paramètres optionnels

Mon constructeur a des paramètres optionnels et ils semblent mess avec la principale façon de faire DI.

constructor(public name:string, public age?:number, private _service:Service);

Tapuscrit naturellement n'aime pas que j'ai mis non paramètre facultatif derrière une option, de plus le service n'a pas obtenir injecté lorsque le paramètre facultatif n'est pas définie. Comment puis-je résoudre ce problème? Je ne peux pas le mettre quelque part d'autre dans le constructeur, puisque j'allais être prévu paramètre le service manuellement.

Est là quelque chose comme champ d'injection?

@Inject() private _service:Service;

constructor(public name:string, public age?:number);

Dois-je remplacer l'option paramètres avec des valeurs par défaut? Toutes les autres suggestions?

EDIT:
Comme discuté ci-dessous, j'ai essayé d'injecter un service dans un objet qui n'est pas créé par Angulaire de la DI. Cela ne fonctionne pas. Puisque je ne peux pas créer cette classe (modèle) à l'aide de DI maintenant, je passe le service manuellement à partir de la classe qui instancie ce objets.

OriginalL'auteur KenavR | 2016-04-06