2010-11-13 3 views
2

Привет, я пытаюсь отладить некоторый код, но не могу понять, что он делает.Помогите понять выражение LINQ

// For reference, the following is roughly equivalent to: 
// select p.* 
// from  CTBEquitiesFiles as o inner join CTBEquitiesDetailStaging as p 
// on  o.ID = p.CTBEquitiesFiles.ID 
// where o.SEFileDate = fileDate and o.SEFileType = 'W' 

mdovar depositRows = fileRepo.Query(o => o.SEFileDate == fileDate && o.SEFileType.Equals("D")) 
    .Join<SE.TradeDetailFile, SE.TradeDetailStaging, int, SE.TradeDetailStaging>(
     detailRepo.Get(), 
     o => o.ID, 
     p => p.CTBEquitiesFiles.ID, 
     (o, p) => p); 

Я уверен, что это не делает то, что я хочу. Я хочу получить все строки из CTBEquitiesFilesDetailsStaging, где столбец SEFileID совпадает с столбцом идентификатора в CTBEquitiesFiles.

Спасибо

+0

Если это не так, как вы ожидаете, вы должны сказать нам, что он * делает. Мы не можем запускать ваш код, чтобы узнать, что происходит. Кроме того, 'o.SEFileType = 'W'' должен иметь« D »вместо« W ». – Gabe

+0

@Gabe: Я думаю, что OP задается вопросом об отладке кода в запросе. – VoodooChild

+0

@Gabe: Я не согласен с вашим предложением. Я думаю, что 'o.SEFileType.Equals (« D »))' show имеют «W», чтобы «D» :) – VoodooChild

ответ

Смежные вопросы