次のような linq クエリがあります。
var trfplanList = (from at in entities.tdp_ProviderAccomodationType
join ap in entities.tdp_ProviderAccomodationTariffPlan on at.PATID equals ap.FK_PATID
join ac in entities.tdp_ProviderAccomodationCategory on ap.FK_PACID equals ac.PACID
where at.FK_ProviderID == CityID && at.IsApproved == 0 && ap.IsApproved == 0 && ac.AccomodationCategory == "Double Occupy"
orderby at.AccomodationType,ap.FromDate,ap.SType
select new AccomodationTariff
{
AccomodationType = at.AccomodationType,
SType = ap.SType,
FromDate = Convert.ToDateTime(ap.FromDate),
ToDate = Convert.ToDateTime(ap.ToDate),
RoomTariff = Convert.ToDecimal(ap.Rate),
ExPAXRate = Convert.ToDecimal(at.PerPaxRate)
}).ToList();
2 つの質問があります。
select new {} ブロックで割り当て中に値を変換できませんか? プロジェクトでエラーが発生しています。
ExPAXRate
たとえば、以前書いていたSQLでデータベースから選択するときに「ケース」を使用したい:CASE ap.SType WHEN 'オフシーズン' THEN at.PerPaxRateOS ELSE at.PerPaxRate END AS ExPAXRate
linq query でこのようなものを使用できますか?