この関数をリファクタリングして、多対多のパラメータを取る方法を教えてください。リファクタリング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