Jestem całkowicie nowy w Linq i zastanawiam się, czy możesz mi pomóc zrozumieć różnicę między następującym Linq? Na przykład ...LINQ - różnica między. Wybierz (n => n.Nazwa) i. Wybierz (n => nowe {n.nazwa});
//normal select
var contacts = entity.Contacts.Select(n => n.FirstName);
//select new
var contacts2 = entity.Contacts.Select(n => new { n.FirstName });
//normal select output
foreach (var c in contacts)
Response.Write(c + "<br/>");
//select new output
foreach (var c in contacts2)
Response.Write(c.FirstName + "<br/>");
Jedyna różnica widzę, że w normalnym wybierzesz, tym firstname (string) jest przechowywany w kolekcji, natomiast w wybierz nowy obiekt kontakt jest zapisany w Collecton a dostęp do imienia następuje przez jego własność. Również select new zwraca właściwości wybrane tylko w instrukcji.
Kolejną różnicą, którą zauważyłem, jest to, że możesz zwrócić wiele konkretnych właściwości w nowym Wybierz.
W jakim scenariuszu wybierzesz jeden z drugim?
Dzięki za pomoc.
Oto scenariusz: 'select new {n.FirstName, n.LastName}' –