Suggestion: add optional “where” clause to “foreach” statement in C#
Wouldn’t it be nice if I could use in C# the following syntax?
for (SomeType repeaterVariable
in SomeEnumerable
where someBooleanExpressionOfRepeaterVariable)
doSomethingUsingRepeaterVariable;
e.g. use this one:
instead of this one:
BTW, if you wonder what FixTime does, it prepends 0: to time strings to make sure they are of format h:m:s.f
Have added this as a comment to another person’s suggestion that I see has similar format, so please vote for that one:
I guess from the above example this can be done like
value.Count(x => x == ‘:’);
and if its something more complex you can create your own extension similar to Count :
public static int Count(this IEnumerable source, Func predicate);
Thanks, that was just an example. In that specific case I don’t use Linq for performance reasons