Assurez-vous d'inclure try
dans votre methodname si:
- vous ne jetez pas toute exception
- votre méthode a la signature suivante:
bool TrySomething(input, out yourReturn)
Donc, fondamentalement, si nous utilisons try
-méthodes nous avons seulement obtenir un résultat booléen de retour.
Ainsi, le code suivant ne va pas jeter des exceptions:
string input = "blabla";
int number;
if (int.TryParse(input, out number))
{
// wooohooo we got an int!
} else
{
//dooh!
}
Alors que ce code peut (et dans ce cas) lancer des exceptions:
string input = "blabla";
int number;
try
{
number = int.Parse(input); //throws an exception
}
catch (Exception)
{
//dooh!
}
À l'aide de Essayer des méthodes est plus sûr et plus sur la défensive à code.
Aussi l'extrait de code #2 prend plus de performance à exécuter si ce n'est pas un entier.