Le code source d'EasyNetQ utilise le symbole de compilation NETFX pour utiliser une amélioration \ correction concernant la bibliothèque TPL comme suit:
#if NETFX
var tcs = new TaskCompletionSource<T>();
#else
var tcs = new TaskCompletionSource<T>(TaskCreationOptions.RunContinuationsAsynchronously);
#endif
La question est de savoir où ce symbole est défini et comment le chemin d'exécution suivant pourrait-il être activé?:
var tcs = new TaskCompletionSource<T>(TaskCreationOptions.RunContinuationsAsynchronously);
MISE À JOUR : J'ai trouvé qu'il était introduit dans https://github.com/EasyNetQ/EasyNetQ/pull/760 mais je ne sais toujours pas ce que c'est exactement.
UPDATE2 : Il semble que ce soit un symbole par défaut défini sur la base du framework cible pour distinguer le framework complet et les builds de base, mais je ne le trouve dans aucune documentation à ce sujet. J'ai besoin de savoir en tant que consommateur de bibliothèque, comment l'activer pour diriger le chemin d'exécution?
Ma meilleure hypothèse est qu'il serait utilisé pour distinguer le .NET Framework (NETFX) et d'autres environnements tels que .NET Standard et .NET Core.
Comme tous les symboles de compilation en C #, il serait défini dans les paramètres du projet et apparaîtrait probablement dans une configuration de build ciblant le .NET Framework (et n'apparaîtrait pas dans d'autres configurations de build). Pour l'activer, il vous suffit donc de modifier la configuration de construction active pour le projet.
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots