8
votes

Affirmer les types .net

Y a-t-il une façon de pouvoir affirmer si une variable est d'un certain type?

tel que: xxx


1 commentaires

Une variable est du type qui a été déclarée comme, regardez quelques lignes dans votre code source. Si vous voyez "objet", alors seulement commencer à envisager les réponses offertes.


4 Réponses :


1
votes
if(myValue is Boolean)
{

}

0 commentaires

0
votes
Assert.IsTrue(variable is bool, "variable was not a Boolean Value");

0 commentaires

9
votes

essayez-vous vraiment d'affirmer que la variable est d'un type particulier ou que la valeur d'une variable est d'un type particulier?

Le premier ne devrait pas faire partie d'un test unitaire - cela fait partie du code déclaré. C'est comme essayer d'essayer de tester un appareil que vous ne pouvez pas appeler une méthode avec les mauvais types d'arguments.

la seconde peut être facilement accompli avec xxx

( En supposant que valeur est une variable de type objet ou une interface.)

Notez que cela testera compatibilité plutôt que le type exact. Si vous souhaitez tester qu'une valeur est un type exact, pas un sous-type, vous pouvez utiliser quelque chose comme: xxx

(il peut y avoir des options disponibles pour des méthodes génériques dans n'importe quelle unité Cadre de test que vous utilisez, bien sûr.)


1 commentaires

Je pense que vous voulez dire ex.getType () .



0
votes

Vous ne spécifiez pas le cadre de test que vous utilisez. Je voudrais donc mentionner que le gallio / mbunit Cadre de test fournit une affirmation commode pour cela très But: xxx


0 commentaires