LINQ LEFT JOIN where子句不起作用

use*_*741 5 c# linq

我需要返回所有事件的列表以及用户可能拥有的任何事件的rsvps.但是,无论我传递的用户名是什么,它都会返回每个rsvp.我的linq查询 - >

   return (from events in this._context.Context.Events
           join rsvps in (this._context.Context.RSVPs
                          .Where(o=> o.UserName == userName))
           on events equals rsvps.Event into re
           from rsvps in re.DefaultIfEmpty()
           select events);
Run Code Online (Sandbox Code Playgroud)

关系是
Events.EventID = RSVPs.EventID

Ser*_*kiy 9

from e in _context.Context.Events
join r in _context.Context.RSVPs.Where(o => o.UserName == userName)
    on e.EventID equals r.EventID into g
select new {
    Event = e,
    Rsvps = g
};
Run Code Online (Sandbox Code Playgroud)