variable valor recorrer pasar parametro obtener numerico getvalues enum como clase buscar asignar solr solrnet

solr - recorrer - Indice el valor de un Enum, no de la cadena



pasar enum como parametro c# (2)

¿Es posible indexar el valor de un Enum en lugar de su representación de cadena utilizando Solrnet?

Digamos que tengo que seguir enum:

[Serializable] [Flags] public enum Gender { Male = 0, Female = 1 }

y agregue un atributo solr a la propiedad Gender de una clase de User :

[SolrField("gender")] public virtual Gender Gender { get; set; }

Si indico la entidad usando:

solr.Add(user)

luego indexará ''Male'' como género en lugar de 0. ¿Es posible tenerlo en su lugar?

Editar: Preferiría no agregar una propiedad adicional para esto, como propone Ondrej.


Prueba esto:

[SolrField("gender")] public int GenderAsInt { get { return (int) Gender; } set { Gender = (Gender) value; } } public virtual Gender Gender { get; set; }

También tenga en cuenta que declarar su enumeración como [Flags] no tiene mucho sentido:

  • Difícilmente habrá alguien tanto Male como Female
  • Male se interpretará como el valor predeterminado con respecto a los valores actuales de los campos enum