public List<String> listStr = new listStr();
public List<String> FindString(Expression<Func<String, bool>> predicate)
{
// return a list that satisfies the predicate
}
C# で Expression を使用する方法を理解するための例を作成しようとしています。このコードを完成させるのを手伝ってくれませんか?
public List<String> listStr = new listStr();
public List<String> FindString(Expression<Func<String, bool>> predicate)
{
// return a list that satisfies the predicate
}
C# で Expression を使用する方法を理解するための例を作成しようとしています。このコードを完成させるのを手伝ってくれませんか?
このようなもの?
public List<String> FindString(List<String> list, Func<String, bool> predicate)
{
return list.Where(predicate).ToList();
}
なぜ式を使用するのですか?それを使用する場合は、事前にコンパイルする必要がありますが、メソッドで式を操作したくない場合を除き、上記を使用することをお勧めします (または linq の.Where()拡張メソッドを直接使用することをお勧めします)。 )
public List<String> FindString(List<String> list, Expression<Func<String, bool>> predicate)
{
var lambda = predicate.Compile();
return list.Where(lambda).ToList();
}
public List<String> FindString(Expression<Func<String, bool>> predicate)
{
return listStr.Where(predicate.Compile()).ToList();
}
public List<String> listStr = new List<String>();
public List<String> FindString(Expression<Func<String, bool>> predicate)
{
// return a list that satisfies the predicate
Func<string, bool> p = predicate.Compile();
return listStr.Where(p).ToList();
}
PS:変数宣言が間違っています。