var sites = (from s in context.RepresentativeItemMeasurementDailySummary
join se in context.Sites on s.SiteID equals se.SiteID
where se.SiteCode == SiteCode
select new { s.SiteID, se.SiteCode }).Distinct();
var workingTimes = (from s in context.Sites
join se in context.SiteExtends on s.SiteID equals se.SiteID
where se.StartTime > TimeSpan.Zero
&& s.SiteCode == SiteCode
select new { se.SiteID, s.SiteCode }).ToList();
var comb = (from t in sites
from t1 in workingTimes
where (t.SiteID == t1.SiteID && t.SiteCode == t1.SiteCode)
select new Sites { SiteID = t.SiteID,SiteCode = t.SiteCode }).ToList();
return comb.Distinct().ToList();