Mapeador genérico de Enumeraciones

08/09/2009 - 13:37 por Alhambra Eidos Development | Informe spam
Hola a todos,

estoy en este caso, tengo dos enumeraciones así:

namespace WcfServices.Contracts
{
[System.Runtime.Serialization.DataContract]
public enum TipoRol
{
[System.Runtime.Serialization.EnumMember]
NoEspecificado,

[System.Runtime.Serialization.EnumMember]
Tomador,

[System.Runtime.Serialization.EnumMember]
Propietario,
}

y otra enum, con los mismos valores, pero en otro namespace


namespace DomainModel
{
public enum TipoRol
{
NoEspecificado,

Tomador,

Propietario,
}

Quiero crear un EnumMapper generico como este

T EnumMapper<T,K>(value)

Y usarlo de esta forma o similar:

WcfServices.Contracts.TipoRol value1 =
EnumMapper<WcfServices.Contracts.TipoRol, DomainModel.TipoRol>(
DomainModel.TipoRol.Propietario);


DomainModel.TipoRol value2 = EnumMapper<DomainModel.TipoRol,
WcfServices.Contracts.TipoRol >(WcfServices.Contracts..Propietario);

Alguna idea ?

gracias de antemano, saludos

Preguntas similare

Leer las respuestas

#6 Alberto Poblacion
09/09/2009 - 13:14 | Informe spam
"Alhambra Eidos Development"
wrote in message
news:
Tengo que probarla, pero como comenta puede mermar el rendimiento, no?




Bueno, cuando se habla de rendimiento, siempre hay que plantearse "en
comparación con qué". Si lo comparamos con el rendimiento de un "cast" como
el que hemos comentado en mensajes anteriores, que lo único que hace es
mover un int de una ubicacíón a otra, entonces el Enum.Parse es mucho más
lento porque tiene que analizar un string carácter por carácter comparándolo
con toda una lista de posibles valores.
Pero si esa función la vamos a llamar cuando se reciba un valor a través
de una llamada a un webservice, entoces el tiempo que pueda perder
analizando el string es completamente insignificante en comparación con lo
que cuesta transmitir el mensaje desde el servidor y decodificar el XMl del
SOAP, así que no tendría el más mínimo problema usar una función de este
tipo.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida