Método Parse o clase Convert C#
En C# podemos encontrar varias formas de convertir una cadena a entero, entre ellos el método Parse o clase Convert.
Aunque ambos den como resultado la conversión de un string a número, tienen algunas funciones diferentes. Veamos algunos ejemplos, utilizaremos la siguiente variable de tipo string con valor null.
string cadena = null;
Método con Parse
Realizaremos la conversión de la cadena anterior a un entero utilizando el método parse de un int.
El código para esta opción queda de la siguiente manera.
int entero = int.Parse(cadena); //Resultado: error de conversión
Al tratar de convertir un string nulo a entero utilizando parse se genera un error de conversión.
Método con Clase Convert
La clase convert también puede realizar la conversión de un tipo de dato a otro, utilizando esta clase para convertir el string anterior.
int entero = Convert.ToInt32(cadena); //Resultado: 0
Convert al recibir un valor null no genera errores de conversión, devuelve un valor de 0.
Sin en cambio el método parse generaba un error con esta misma operación, una diferencia entre ambos.
Podría interesarte Validar si un IEnumerable está vacío en C#
Este es un pequeño ejemplo si la entrada es nula, sin embargo, si la entrada es una cadena vacía en ambos se genera un error de conversión.
Una cadena vacía es lo que regularmente se obtiene en un campo que el usuario no llena, por lo tanto, hay que utilizar otros validadores.
Con los ejemplos anteriores puedes tener una idea sobre si utilizar el método Parse o la clase Convert en tu código de C#.