Reflection - obter o nome de uma propriedade (string)

<< Click to Display Table of Contents >>

Navigation:  Outros > Reflection >

Reflection - obter o nome de uma propriedade (string)

Previous pageReturn to chapter overviewNext page

Pessoa.cs

 

        public class Pessoa

        {

            public int Codigo { getset; }

            public string Nome { getset; }

            public int Idade { getset; }

        }

 

 

Método mágico

 

        static string GetPropertyName<T>(Expression<Func<T>> exp)

        {

            return (((MemberExpression)(exp.Body)).Member).Name;

        }

 

 

Como usar

 

            Pessoa p = new Pessoa();

 

            string propName1 = Auxiliar.GetProp(() => p.Nome);

            string propName2 = Auxiliar.GetProp(() => p.Codigo);

            string propName3 = Auxiliar.GetProp(() => p.Idade);

 

            Console.WriteLine(propName1 + ", " + propName2 + ", " + propName3);

 

 

Saída em forma de string

 

            Codigo, Nome, Idade