C# 联接条件在linq中给出错误
我在下面使用了linq,但它在第一个“join”关键字上给出了错误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
“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
})