title: LINQ Join using dot notation and more than one joining field
body: <p>I would like to know how I can write an inner join in Linq when joining two tables through more than one field.</p>
  
  <p>For example, say this is the SQL equivalent:</p>
  
  <pre><code>SELECT tableOne.fieldThree
  
  FROM table_One AS tableOne,
       table_Two AS tableTwo,
  WHERE
       tableOne.fieldOne == tableTwo.fieldOne AND
       tableOne.fieldTwo == tableTwo.fieldTwo;
  </code></pre>
  
  <p>I tried this:</p>
  
  <pre><code>tableTwo.Join(tableOne,
                two =&gt; new { two.fieldOne, two.fieldTwo },
                one =&gt; new { one.fieldOne, one.fieldTwo },
                (two, one) =&gt; one.fieldThree)
          .ToList();
  </code></pre>
  
  <p>But the compiler shows an error that says the method cannot be inferred from usage.</p>
  
  <p>Thanks.</p>