Могу ли я с помощью LINQ вернуть List<Person> из List<String> следующим образом:
List<Person>
List<String>
// this is not valid code, just to explain the idea var persons = new string[] {"Tom", "Adam"}.ToList<Person>(str => Name = str);
Заранее спасибо.
var people = new string[] {"Tom", "Adam"} .Select(str => new Person {Name = str});
Это вернет IEnumerable<Person>.Если вы хотите список:
IEnumerable<Person>
var people = new string[] {"Tom", "Adam"} .Select(str => new Person {Name = str}) .ToList();
Это тоже работает:
var names = new []{"Tom", "Adam"}; var persons = from name in names select new Person {Name = name};
и тогда вам придется сделать:
var personsList = persons.ToList();
для материализации выражения LINQ в List<Person> экземпляре.