結合して値を選択する必要がある2つのテーブルがあり、結合は外部結合のままにする必要があります。linq to sql を使用しようとしていますが、実際の値ではなく 0 を取得しています
参照テーブル:
refType varchar(250),
description varchar(250)
presentationsType (私の別のテーブル)
id int
refType varchar(250),
OtherFundings varchar(250)
私が使用しているクエリは
string organization = (string)Session["organization"];
int FiscalYear = Int32.Parse((string)Session["fiscalyear"]);
string ReportingPeriod = (string)Session["reportingperiod"];
var presentationType = from pt in OCHART.References
join rf in OCHART.OCHART_PresentationTypes on pt.RefType equals rf.RefType into prt
from x in prt.Where(prt2 => prt2.OrganizationName.Equals(organization) && prt2.ReportingPeriod.Equals(ReportingPeriod) && prt2.FiscalYear == FiscalYear).DefaultIfEmpty()
where pt.RefType.Equals("09-10.1b")
orderby pt.RefOrder ascending
select new {
refType = pt.RefType,
refName = pt.Description,
otherFundings = (x.Fundings == null ? 0 : x.Fundings),
id = (x.id == null ? 0 : x.id)
};
しかし、2 番目のテーブルに適切な値があるにもかかわらず、id = 0 と otherFunding = 0 を取得しています。私は自分が間違っていることを本当に確信していません。
助けていただければ幸いです。
ありがとう。