我怎樣才能重構這個函數,以便它可以採取任何多到許多參數?重構LINQ函數
計劃有許多許多參數,如年齡,膚色,等...
所以我有這樣的功能:
public int GetAgesOnProgram(IEnumerable<Program> ProgramList)
{
return (from x in ProgramList
where x.Ages.Any()
select x.Ages).Count();
}
,但我還需要這一個:
public int GetColorsOnProgram(IEnumerable<Program> ProgramList)
{
return (from x in ProgramList
where x.Colors.Any()
select x.Colors).Count();
}
由於我在程序中有多達10個多對多的關係,我想有一個單一的函數可以處理它嗎?
編輯: 我怎麼能返回年齡或顏色列表中,而不是一個int爲:
public IEnumerable<Color> GetColorsOnProgram(IEnumerable<Program> ProgramList)
{
return (from x in ProgramList
where x.Colors.Any()
select x.Colors);
}
不應該將該方法重新命名爲'GetCountOnProgram(..)',因爲它不再只是獲得年齡? – Jamiec 2012-02-27 10:18:59