C# 联接条件在linq中给出错误

C# 联接条件在linq中给出错误,c#,mysql,linq,C#,Mysql,Linq,我在下面使用了linq,但它在第一个“join”关键字上给出了错误 “It is giving error”不包含“DefaultEmpty”的定义,也没有接受第一个参数的扩展方法“DefaultEmpty”。rf.DataReceived的类型是什么(应该是DataReceived无处不在,顺便说一句),wl.StationId和wl.datareceived?datareceived是datetime,StationId是intWell如果wl.StationId是一个int,你不能将它与i

我在下面使用了linq,但它在第一个“join”关键字上给出了错误


“It is giving error”不包含“DefaultEmpty”的定义,也没有接受第一个参数的扩展方法“DefaultEmpty”。

rf.DataReceived的类型是什么(应该是
DataReceived
无处不在,顺便说一句),
wl.StationId
wl.datareceived
?datareceived是datetime,StationId是intWell如果
wl.StationId
是一个
int
,你不能将它与
int?
连接。如果我删除int,那么结果也是一样的。我认为正确的方法名称是
DefaultIfEmpty()
而不是
DefaultEmpty()
(from st in queryResult.ToList()
 join rf in rainfall.ToList() on Convert.ToInt32(st.StationID) equals Convert.ToInt32(rf.StationID)
 join wl in water on 
 new { StationID = Convert.ToInt32(st.StationID), DataRecieved = rf.DataRecieved } 
 equals
 new { StationID = Convert.ToInt32(wl.StationId), DataRecieved = wl.DataRecieved } into gj
 from subpet in gj.DefaultEmpty()
                                     select new
                                     {
                                     Stationname = st.Stationname,
                                     Stationid = st.stationid,
                                     State = st.state,
                                     Datarecieved = rf.datarecieved,
                                     dailyrainfall = rf.dailyrainfall,
                                     cumlativerainfall = rf.cumrainfall,
                                     waterlevel1 = subpet.waterlevel1

                                     })