LINQ to SQL: несколько соединений для нескольких столбцов. Возможно ли это?

Дано:

Таблица с именем TABLE_1 со следующими столбцами:

  • ID
  • ColumnA
  • ColumnB
  • ColumnC

I есть SQL-запрос, в котором TABLE_1 присоединяется к себе дважды на основе ColumnA , ColumnB , ColumnC . Запрос может выглядеть примерно так:

Select t1.ID, t2.ID, t3.ID
  From TABLE_1 t1
  Left Join TABLE_1 t2 On
       t1.ColumnA = t2.ColumnA
   And t1.ColumnB = t2.ColumnB
   And t1.ColumnC = t2.ColumnC
  Left Join TABLE_1 t3 On
       t2.ColumnA = t3.ColumnA
   And t2.ColumnB = t3.ColumnB
   And t2.ColumnC = t3.ColumnC
... and query continues on etc.

Проблема:

Мне нужно, чтобы этот запрос был переписан в LINQ. Я пробовал нанести удар по нему:

var query =
    from t1 in myTABLE1List // List<TABLE_1>
    join t2 in myTABLE1List
      on t1.ColumnA equals t2.ColumnA
      && t1.ColumnB equals t2.ColumnA
    // ... and at this point intellisense is making it very obvious
    // I am doing something wrong :(

Как мне написать свой запрос в LINQ? Что я делаю не так?

118
задан aarona 15 March 2011 в 05:07
поделиться