Let\'s say I have the following piece of code:
string SomeConst = \"OtherName\";
var persons = GetPersons(); //returns list of Person
var q = persons.Select(
The only way I'm aware of you can dynamically add properties whose name is unknown at compile time is the ExpandoObject :
var q = persons.Select(p => { dynamic obj = new ExpandoObject(); obj.Name = p.Name; return obj; });
But I really don't see any interest in doing such a thing. It is most probably a very bad design/idea to do so. You will undoubtly create more awkward, unreadable and unmaintenable code than you will solve anything...