Construir Consultas Linq Dinamicamente

suponha que eu tenha uma lista de strings, como

list<string> cols = {"id", "name", "position"}.

Essa lista é gerada dinamicamente e cada uma nesta lista representa um nome de coluna em uma tabela de banco de dados.

o que eu quero fazer é criar uma consulta linq dinamicamente, que retorna apenas essas colunas.

var q = from e in employ
        select new {
          id = id,
          name = name,
          position = position
};

Como posso gerar uma consulta como essa baseada nas listas de colunas de entrada?

questionAnswers(2)

yourAnswerToTheQuestion