Вы можете использовать оператор безопасной навигации с оператором объединения нулей:
using (WeeklyCreditEntities WCE = new WeeklyCreditEntities())
{
var xx = Raw.GroupJoin(WCE.tblCHRIS,
a => a.CHRISID,
b => b.CHRISID,
(a, b) => new
{
raw = a,
chris = b.DefaultIfEmpty().FirstOrDefault()
}).Select(x => new
{
RawEMpid = x.raw?.EmployeeID ?? defaultValue,
CHRISEmpID = x.chris?.EmployeeID ?? defaultValue,
RawCHRISID = x.raw?.CHRISID ?? defaultValue,
RawFullname = x.raw?.Fullname ?? defaultValue,
RawAmount = x.raw?.Amount ?? defaultValue,
chrisBank = x.chris?.BankAccount ?? defaultValue
}).ToList();
Или, если вы используете более старую версию C # / Visual Studio, вы можете просто использовать троичный оператор:
using (WeeklyCreditEntities WCE = new WeeklyCreditEntities())
{
var xx = Raw.GroupJoin(WCE.tblCHRIS,
a => a.CHRISID,
b => b.CHRISID,
(a, b) => new
{
raw = a,
chris = b.DefaultIfEmpty().FirstOrDefault()
}).Select(x => new
{
RawEMpid = x.raw != null? x.raw.EmployeeID : defaultValue,
CHRISEmpID = x.chris != null? x.chris.EmployeeID : defaultValue,
RawCHRISID = x.raw != null? x.raw.CHRISID : defaultValue,
RawFullname = x.raw != null? x.raw.Fullname : defaultValue,
RawAmount = x.raw != null? x.raw.Amount : defaultValue,
chrisBank = x.chris != null?x.chris.BankAccount : defaultValue
}).ToList();