90 votes

Sur IServiceProvider, quelles sont les différences entre les méthodes GetRequiredService et GetService ?

Quelles sont les différences entre et ?

Quand est-il préférable d’utiliser `` ?

110voto

Tseng Points 2687

Vous devriez rarement à l'appel de ces méthodes à tous, comme vous devez utiliser le constructeur de l'injection dans la mesure du possible.

Dans de rares cas, comme les usines ou à instancier dynamiquement les gestionnaires de commande, vous pouvez résoudre vous-même.

Cela étant dit, vous devez utiliser GetRequiredService où vous avez besoin du service. Il va lever une exception, lorsque le service n'est pas enregistré.

GetService sur l'autre côté est pour l' option de dépendances, qui retournera null quand il n'y a pas un tel service enregistré.

61voto

tchelidze Points 4891

La différence est que retourne si il ne trouve pas le service. lève un à la place.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X