Welcome to the Treehouse Community
The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Joshua Graham
8,268 PointsProblem creating anonymous variable with Linq query...or problems trying to satisfy question.
I got a message saying "pelican" should be in the Results...well when I do this on Microsoft visual studio I saw pelican in the results. So, what is the problem with this?
And I've already tried it with just the "from BirdName in birds where BirdName.Color == mysteryBird.Color select BirdName.Name," and not the Birb color afterwards, but then I got a message saying there should be two elements.
var birds = new[]
{
new { Name = "Pelican", Color = "White" },
new { Name = "Swan", Color = "White" },
new { Name = "Crow", Color = "Black" }
};
var mysteryBird = new {Color = "White",Sightings = 3};
var matchingBirds = new[]
{
from BirdName in birds where BirdName.Color == mysteryBird.Color select BirdName.Name,
from BirdName in birds where BirdName.Color == mysteryBird.Color select BirdName.Color
};

Joshua Graham
8,268 PointsThe exact wording of the challenge "Challenge Task 2 of 2
Create a variable named matchingBirds and assign it a LINQ query on the birds variable that have the same Color property as the mysteryBird object. In the query, return an anonymous type with a property named BirdName and assign to it the Name property of the birds."
I changed it to "Name" then got this message
" Bummer! Does the anonymous type in your variable "matchingBirds" contain a property named "BirdName"?"
There wasn't a compiler error, it just wants it to specifically have the name "BirdName"
I don't think that is the problem though.

irem gürel
5,732 PointsI have resolved your problem. Here is the correct answer (please check if it works)
var matchingBirds = from s in birds where s.Color == mysteryBird.Color select new { BirdName=s.Name };

James Churchill
Treehouse TeacherHi Joshua!
Did Irem's last suggestion work for you?
Thanks ~James
irem gürel
5,732 Pointsirem gürel
5,732 PointsI think you should write just Name instead of BirdName.