62,243
社区成员




class student
{
public int userid{get;set;}
public string name{get;set;}
}
class dateState
{
public int userid{get;set;}
public string data{get;set;}
public string state{get;set;}
}
public IQueryable<dynamic> GetAll()
{
var ss = db.Set<student>()
.Join(db.dateState, p => p.userid, c => c.userid, (p, c) => new { p.userid, p.name, c.data,c. state})
.Distinct();
}
void Main()
{
List<student> list=new List<student>(){new student{userid=1,name="张三"},new student{userid=2,name="李四"},new student{userid=3,name="王五"}};
List<dateState> list1=new List<dateState>(){new dateState{userid=1,data="2018-01-01",state="在"},new dateState{userid=1,data="2018-01-02",state="在"}};
var result = from l in list
join p in list1.DefaultIfEmpty(new dateState()) on l.userid equals p.userid into m
select new { userid = l.userid, name = l.name,data=m.Min(t=>t.data), state = m.Where(t => t.userid == l.userid).Select(t => t.state).FirstOrDefault() };
result.Dump();
}
class student
{
public int userid{get;set;}
public string name{get;set;}
}
class dateState
{
public int userid{get;set;}
public string data{get;set;}
public string state{get;set;}
}