Linq to sql постоянно возвращает ноль - PullRequest
0 голосов
/ 13 октября 2011

У меня есть следующий запрос SQL:

SELECT DISTINCT 
  Participant.BackgroundTrainingID, 
  Location.TrainingSite
FROM Registration, ProgramLocation, Participant, Program, Location
WHERE ProgramLocation.LocationID = Location.LocationID 
  AND ProgramLocation.ProgramID=Registration.ProgramID 
  AND Registration.ParticipantID=Participant.ParticipantId

Я написал следующий LINQ to SQL, чтобы соответствовать запросу выше:

var trainingsiteinfo = (from c in db.ProgramLocations 
                        from n in db.Registrations 
                        from l in db.Participants  
                        from h in db.Locations 
                        where c.LocationID == h.LocationID 
                          && c.ProgramID == n.ProgramID 
                          && n.ParticipantID == l.ParticipantId 
                        select new { 
                          h.TrainingSite, 
                          l.BackgroundTrainingID }).Distinct();

Запрос SQL работает нормально, но LINQ постоянно возвращаетнуль.

Ответы [ 3 ]

0 голосов
/ 13 октября 2011

У вашего кода linq есть незакрытая скобка} в операторе выбора

0 голосов
/ 13 октября 2011

Я использую Linqer http://www.sqltolinq.com/, когда у меня возникают идеи :-) А также это ускоряет работу по конверсии.

0 голосов
/ 13 октября 2011

Убедитесь, что ваш контекст БД не выходит за рамки, прежде чем вы связали свои результаты.Вы можете проверить это, добавив .ToList() после вашего .Distinct(), чтобы принудительно загрузить результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...