como obter o valor de um nome de coluna definido em c # / Linq?

Eu quero saber se é possível obter o valor de um nome de colunas definido? Por exemplo, SELECT NAME FROM PERSON;

 string NAME;  a... == NAME); 

O problema é que o nome da coluna pode mudar, nem sempre é a coluna “NAME”. Portanto, preciso de uma solução na qual possa passar dinamicamente um nome de coluna para a consulta.

Você quer o código-fonte em C # para criar uma consulta linq que compila para SELECT NAME FROM PERSON em Linq to SQL ou Linq to Entity Framework?

 IEnumerable names = from x in context.PERSONS select x.Name; 

OU

 IEnumerable names = context.PERSONS.Select(x => x.Name); 

Em Monad, você quer uma projeção na propriedade Name.

EDIT: você deseja indicar dinamicamente qual coluna?

 string columnName = "Name"; ParameterExpression personExpression = Expression.Parameter(typeof(Person), "p"); Expression> column = Expression.Lambda>(Expression.PropertyOrField(personExpression, columnName), personExpression); IEnumerable things = context.PERSONS.Select(column); 

tente isso

 fundPerson = context.PERSON.Where(a=>a... == NAME).Select(a=>a.NAME).SingleOrDefault(); 

Sua pergunta é um pouco enganosa .. Você está após uma coleção de nomes, como o que você obteria de executar o SQL “SELECT Name FROM Person”?

Em caso afirmativo, usando a syntax de Linq para sql:

 var people = from p in context.PERSON select a.NAME; 

Se você está tentando encontrar uma pessoa específica, com base na string NAME?

 string name = "barry"; var person = from p in context.PERSON select a where a.NAME.Contains(name);