Cómo comparar la cadena con la enumeración en C #
string strName = "John";
public enum Name { John,Peter }
private void DoSomething(string myname)
{
case1:
if(myname.Equals(Name.John) //returns false
{
}
case2:
if(myname == Name.John) //compilation error
{
}
case3:
if(myname.Equals(Name.John.ToString()) //returns true (correct comparision)
{
}
}
cuando uso.Equals
Es referencia de comparación y cuando uso==
significa valor de comparación.
¿Hay un código mejor en lugar de convertir el valor de enumeración aToString()
¿para comparacion? porque destruye el propósito de la clase de valor enum y también,ToString()
en la enumeración está en desuso?