重複の可能性:
LINQステートメントで動的に実行されるメソッドにwhereステートメントを送信するにはどうすればよいですか?
単純なLINQクエリを別々のメソッドで記述してきましたが、繰り返しになっています。名前と場所のばかげた例を許してください。3つのメソッドすべてで変更されるのは「where」句だけです。
この反復的なコードをどのようにしてより乾燥させることができますか?
たとえば、すべてを同じに取るが、where句を変更できるヘルパーメソッドのようなものです。
public IEnumerable<NamePlace> GetSomeData(int num1, int num2)
{
var temp = from Name in Names
from Place in Places
where Name.id == num1 && Place.id = num2
select new NamePlace {
field1 = Name.name;
field2 = Place.name;
};
return temp;
}
public IEnumerable<NamePlace> GetSomeData2(int num1, int num2)
{
var temp = from Name in Names
from Place in Places
where Name.age == num1 && Place.streetNumber = num2
select new NamePlace {
field1 = Name.name;
field2 = Place.name;
};
return temp;
}
public IEnumerable<NamePlace> GetSomeData3(int num1, int num2)
{
var temp = from Name in Names
from Place in Places
where Name.favouriteNumber == num1 && Place.neighbourNumber = num2
select new NamePlace {
field1 = Name.name;
field2 = Place.name;
};
return temp;
}