xxxxxxxxxx
(from CRC in ent.ComRegistrationCentres
join CS in ent.ComStates on CRC.DistrictCd equals CS.DistrictCd
join CD in ent.ComDistricts on CRC.DistrictCd equals CD.DistrictCd
join CVM in ent.ComVdcMunicipalities on CRC.VdcMunCd equals CVM.VdcMunCd
where CRC.RegCentreCd == Reg_center_id
select new BoothInfoAssignModel
{
ProvinceName =CS.DescLoc ,
DistrictName =CD.DescLoc,
MunicipalityName =CVM.DescLoc,
BoothName =CRC.DescLoc,
}).FirstOrDefault();
xxxxxxxxxx
using System.Linq;
using System;
namespace LINQJoin
{
class Program
{
static void Main(string[] args)
{
var QSOuterJoin = from emp in Employee.GetAllEmployees()
join add in Address.GetAddress()
on emp.AddressId equals add.ID
into EmployeeAddressGroup
from address in EmployeeAddressGroup.DefaultIfEmpty()
select new {emp, address };
foreach (var item in QSOuterJoin)
{
Console.WriteLine($"Name : {item.emp.Name}, Address : {item.address?.AddressLine} ");
}
Console.ReadLine();
}
}
}
xxxxxxxxxx
IQueryable<Job> jobs = (from j in _db.Jobs
join jt in _db.JobTranslators on j.Id equals jt.JobId into jts
from jtResult in jts.DefaultIfEmpty()
join jr in _db.JobRevisors on jtResult.Id equals jr.JobId into jrs
from jrResult in jrs.DefaultIfEmpty()
join u in _db.Users on jtResult.UserId equals u.Id into jtU
from jtUResult in jtU.DefaultIfEmpty()
where jtUResult.Id == userId
orderby j.Id
select j).Concat(
from j in _db.Jobs
join jt in _db.JobTranslators on j.Id equals jt.JobId into jts
from jtResult in jts.DefaultIfEmpty()
join jr in _db.JobRevisors on jtResult.Id equals jr.JobId into jrs
from jrResult in jrs.DefaultIfEmpty()
join u in _db.Users on jrResult.UserId equals u.Id into jrU
from jrUResult in jrU.DefaultIfEmpty()
where jtUResult.Id == userId
orderby j.Id
select j
).Distinct()
xxxxxxxxxx
var q =
from c in categories
join pt in products on c.Category equals pt.Category into ps_jointable
from p in ps_jointable.DefaultIfEmpty()
select new { Category = c, ProductName = p == null ? "(No products)" : p.ProductName };
xxxxxxxxxx
from f in _db.Foo
join b in _db.Bar on f.BarId equals b.Id into b_j
from b in b_j.DefaultIfEmpty()
select new { f, b }