public class Demo
{
public void When(Func<Person, bool> condition)
{
if (!condition)
{
Log.Info("Condition not met.");
return;
}
// Do something
}
}
Im When
Methode würde ich, wenn ein Prädikat oder Func<bool>
false zurück anmelden möchten. Die Protokollierung "Bedingung nicht erfüllt" gibt mir jedoch nicht viele Informationen. Wenn ich die Methode, wie so nennen:Logging Lambda-Ausdrücke
demo.When(x => x.Name == "John");
Gibt es eine Möglichkeit, dass die Expression in eine lesbare/sinnvolle Zeichenfolge zur Protokollierung zu konvertieren?
Stimmen Sie mit @Kirk Woll unten. Und vorausgesetzt, Sie möchten Ihre Methodensignatur nicht ändern, sind Sie wahrscheinlich SOL. Siehe dazu: http://stackoverflow.com/questions/767733/converting-a-net-funct-to-a-net-expressionfunct. –