MSDN semble indiquer que la Cxxx des moulages pour des types spécifiques peuvent améliorer les performances en VB .NET parce qu'ils sont convertis au code en ligne. Pour une raison quelconque, il suggère aussi DirectCast par opposition à CType dans certains cas (les documentations des états, c'est quand il y a une relation d'héritage; je crois que cela signifie que la santé mentale de la distribution est vérifié au moment de la compilation et d'optimisation peut être appliquée alors que CType utilise toujours le temps d'exécution de VB.)
Quand j'écris VB .NET code, ce que j'ai à utiliser dépend de ce que je fais. Si c'est le prototype de code, je vais le jeter, j'utilise tout ce que j'arrive à taper. Si c'est du code, je suis sérieux, j'essaie d'utiliser un Cxxx exprimés. Si l'un n'existe pas, j'utilise DirectCast si j'ai des motifs raisonnables de croire qu'il y a une relation d'héritage. Si c'est une situation où je n'ai aucune idée si le casting devrait réussir (la saisie de l'utilisateur -> nombres entiers, par exemple), puis-je utiliser TryCast de manière à faire quelque chose de plus convivial que de jeter une exception à l'utilisateur.
Une chose que je ne peux pas bougé, c'est que j'ai tendance à utiliser ToString au lieu de CStr mais les soi-disant Cstr est plus rapide.