C# multi-line lambda expression -


this question has answer here:

i want print percentage value in 1 (or more) integer intervals. code below describes object.progresschanged eventhandler<eventargs> , maxpercent global int variable.

object.progresschanged += (sender, args) => (     if (maxpercent < ((int) args.progresspercentage)) {         maxpercent = (int) args.progresspercentage;         console.writeline(maxpercent + "%");     } ) 

i can solve problem doing this:

object.progresschanged += (sender, args) => afunction(args); 

where afunction contains same code after => operator in first piece of code.

i looking more elegant way approach problem, if possible, in 1 line. tips?

object.progresschanged += (sender, args) => {     maxpercent = math.min(maxpercent, (int)args.progresspercentage); }; 

as jeff pointed out should use { } multi-line lambda.


Comments