내 코드에서 linq 쿼리를 처리하는 엔티티 프레임 워크에 문제가 있습니다. SQL Server 2008 R2의 아래 쿼리는 정확한 레코드 집합을 가져옵니다. 이 경우 내 쿼리 또는 EF 관련 문제에 대해 알고 싶습니다. EF 문제인 경우 작업 할 수있는 방법이 있습니다. 이 주변. 각 테이블에는 일대 다 많은 관계가 있습니다. 제 질문에 관한 추가 정보를 제공해야하는지 알려주세요.LINQ EF 쿼리 문제
언급할만한 가치가있는 것은 소스 테이블에 Nullable 인 FrequencyID와 CurrencyID가 많이 있습니다. SQL Server에서 Null로 원본 테이블을 제외하면 총 360 개의 레코드가 나올 것으로 예상됩니다. 어떻게 든 EF는
SQL 쿼리
select
spa.PartnerNumber,
sp.FirstName,
sp.LastName,
al.AllowanceName,
spa.StartDate,
spa.EndDate,
fr.FrequencyDescription,
cr.CurrencyCode,
spa.Note
from SAP2.PartnerAllowance spa
join MasterData..AllowanceMaster al on al.AllowanceMasterId = spa.AllowanceID
join SAP2.Partner sp on spa.PartnerNumber = sp.PartnerNumber
join MasterData.Currency cr on spa.CurrencyID = cr.CurrencyId
join MasterData..Frequency fr on spa.FrequencyID = fr.FrequencyID
관련 LINQ
var sap2Partners = sap2Partner.Get().ToList();
var currency = sap2Currency.Get().ToList();
var frequency = sap2Frequency.Get().ToList();
var sap2PartnerAllowance = sap2PartnerAllowanceRepository.Get().ToList();
var allowance = sap2Allowance.Get().ToList();
var result = (from spa in sap2PartnerAllowance
join spt in sap2Partners on spa.PartnerNumber equals spt.PartnerNumber
join al in allowance on spa.AllowanceID equals al.AllowanceMasterId
join cr in currency on spa.Currency.CurrencyId equals cr.CurrencyId
join fr in frequency on spa.Frequency.FrequencyID equals fr.FrequencyID
select new DataEntityUI
{
PartnerNumber = spa.PartnerNumber,
FirstName = spt.FirstName,
LastName = spt.LastName,
AllowanceName = al.AllowanceName,
StartDate = String.Format(CurrentUserPreferences.DateFormat, spa.StartDate),
EndDate = String.Format(CurrentUserPreferences.DateFormat, spa.EndDate),
Amount = spa.Amount,
Frequency = fr.FrequencyDescription,
Currency = cr.CurrencyDesciption,
Note = spa.Note
}).ToList();
Linq to SQL 또는 EF입니까? 이 excatly 문제는 무엇입니까? – Andrew
EF와 함께, 통화 및 빈도 표에 참여할 때 문제가 있습니다. 내가 말했듯이, 나는 틀릴 수도 있습니다. 나는이 문제에 처음으로 직면하고있다. – gaganHR
linq 쿼리를 실행할 때 발생하는 오류는 무엇입니까? – elolos