J'ai une application API, application de la bibliothèque de classes de service et de référentiel. SERVICE PARTIE I Écrire une logique et un référentiel Business communiquer uniquement pour la base de données. Ma question que le type de dépendance est le meilleur pour le référentiel et le service.
3 Réponses :
Les services de vie transitoires (addtransient) sont créés à chaque fois Ils sont demandés au conteneur de service. Cette vie fonctionne mieux Pour les services légers et apatrides. P>
SERVICES DE VIE SCOPED (ADDCOPED) sont créés une fois par client demande (connexion). p>
Singleton Lifetime Services (AddSingleton) est créé la première fois ils sont demandés (ou lorsque le démarrage.configurevices est exécuté et un L'instance est spécifiée avec l'enregistrement du service). P> blockQuote>
Dépendre donc de ce dont vous avez besoin que vous pouvez choisir une ascension correcte, vous pouvez le voir plus ici p>
Je suppose que votre Il est dangereux de résoudre un service scopé d'un singleton. Il peut que le service ait un état incorrect lors du traitement des demandes suivantes. P>
blockQuote>
Pour plus de détails: Injection de dépendance dans ASP.NET Core-Service Vietimes P>
Vous pouvez maintenant choisir entre Les services de vie transitoires (addtransient) sont créés à chaque fois qu'ils sont demandés au conteneur de service. Cette durée de vie fonctionne mieux pour les services légers et apatrides. P>
SERVICES DE VIE SCOPÉE (ADDCOPED) est créé une fois par demande client (connexion). P>
blockQuote> CocherPositorititory code> dépend de votre CORE EF CORE
dBContext code> et de votre
Ef core
dbcontext code> est par défaut enregistré comme
scopedserivce code>
est donc ici Enregistrement TICKEPository code> comme
SingletOnervice < / code> est hors de considération comme parce que: p>
addtransient <> code> et
addScoped <> code> où: p>
Comme toujours, cela dépend. Ma suggestion est la suivante: p>
S'il y a des choix, il doit dépendre, alors quel est le scénario?