I have a MembershipGroups table that is associated with a child Members table. The Members table has a Status column which can be set to Active or Inactive.
I want to select all MembershipGroups and only their active Members
As an example,
MembershipGroups
ID—-Title
1—–Group #1
2—–Group #2
Members
MembershipGroupID-Name–Status
1————————-John—-Active
1————————-Sally—-Inactive
1————————-David—Inactive
I’m trying to create a query that looks something like the following (which doesn’t currently work):
var query = from mg in db.MembershipGroups
where mg.Members.Status = "Active"
select mg
The result for this example should return a MembershipGroup of ID#1 with only one child Member entity
How can use LINQ-to-SQL to select a parent object that filters on child objects? If I were using straight T-SQL then this would be a simple join with a where clause but it seems to be much more difficult to do using LINQ-to-SQL.
Edit – Updated answer to return the MemberShipGroup object