2013-03-19 45 views
1

我有一个对象列表(人)这些人有他们的某些属性,电子邮件名称,年龄,DOB等。我会怎么做关于通过姓名搜索某个人,然后返回属于该人的其余数据。按属性搜索对象列表并返回与该对象关联的属性的其余部分

我只想提出一些提示,看看现在真的在挣扎几天,现在生活中不能想到如何去做。

+0

后你的代码有和有人能够更好地引导你。例如,这可以使用Linq轻松完成,但在提供解决方案之前,您应该发布一些代码。 – Icarus 2013-03-19 16:20:44

+0

请粘贴一些代码并指定您正在使用的.net(如果有)的哪个版本。例如。你可以使用LINQ吗? – Tsar 2013-03-19 16:21:37

回答

2

Linq是最可读的恕我直言:

var alfreds = allPersons.Where(p => p.Name == "Alfred"); 

foreach(Person p in alfreds) 
{ 
    Console.WriteLine("Next {0} Age:{1} DOB:{2}", p.Name, p.Age, p.DOB); 
} 

如果你正在寻找的正是一个人或要采取的第一个“阿尔弗雷德”(例如):

Person p = allPersons.FirstOrDefault(p => p.Name == "Alfred"); 
if(p != null) 
{ 
    Console.WriteLine("Next {0} Age:{1} DOB:{2}", p.Name, p.Age, p.DOB); 
}