© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
C#C
C#•4y ago•
6 replies
Robin Lindner

LINQ Lambda-Expression Diff

It's probably very simple, I'm just on the fence today.

The Lambda version works as expected the Expression version does not. Do you see where the difference is?

Works:
var groupedOccurences = occurences
                    .SelectMany(static occurence => occurence.MailAddress.Split(',', StringSplitOptions.RemoveEmptyEntries).Select(addr => new
                    {
                        MailAddress = addr.Trim(),
                        occurence.DatabasePath,
                        occurence.MaskName
                    }))
                    .GroupBy(static occurence => occurence);
var groupedOccurences = occurences
                    .SelectMany(static occurence => occurence.MailAddress.Split(',', StringSplitOptions.RemoveEmptyEntries).Select(addr => new
                    {
                        MailAddress = addr.Trim(),
                        occurence.DatabasePath,
                        occurence.MaskName
                    }))
                    .GroupBy(static occurence => occurence);


Does not work (different results):
var groupedOccurences = from occurence in occurences
                        from address in occurence.MailAddress.Split(',', StringSplitOptions.RemoveEmptyEntries)
                        group new {
                            MailAddress = address.Trim(),
                            occurence.DatabasePath,
                            occurence.MaskName
                        } by occurence into grp
                        select grp;
var groupedOccurences = from occurence in occurences
                        from address in occurence.MailAddress.Split(',', StringSplitOptions.RemoveEmptyEntries)
                        group new {
                            MailAddress = address.Trim(),
                            occurence.DatabasePath,
                            occurence.MaskName
                        } by occurence into grp
                        select grp;
C# banner
C#Join
We are a programming server aimed at coders discussing everything related to C# (CSharp) and .NET.
61,871Members
Resources

Similar Threads

Was this page helpful?
Recent Announcements

Similar Threads

Await Linq Expression
C#CC# / help
4y ago
How to define an Anonymous type lambda parameter in Linq Expression
C#CC# / help
4y ago
✅ System.InvalidOperationException: The LINQ expression
C#CC# / help
2y ago
❔ System.Linq.Expressions custom expression
C#CC# / help
3y ago