Konvertieren eines Prädikats <T> in ein Func <T, bool>
Ich habe eine Klasse mit einem MitgliedPredicate
was ich in einem Linq-Ausdruck verwenden möchte:
using System.Linq;
class MyClass
{
public bool DoAllHaveSomeProperty()
{
return m_instrumentList.All(m_filterExpression);
}
private IEnumerable<Instrument> m_instrumentList;
private Predicate<Instrument> m_filterExpression;
}
Wie ich das gelesen habe "Predicate<T>
ist [...] völlig äquivalent zuFunc<T, bool>
"(siehe hier), Würde ich erwarten, dass dies funktioniert, daAll
nimmt als Argument an:Func<Instrument, bool> predicate
.
Ich erhalte jedoch den Fehler:
Argument 2: cannot convert from 'System.Predicate<MyNamespace.Instrument>' to 'System.Type'
Gibt es eine Möglichkeit, das Prädikat in ein Argument zu konvertieren, das diese Funktion schluckt?