title: LINQ Joining in C# with multiple conditions
body: <p>I have a LINQ Joining statement in C# with multiple conditions.</p>
  
  <pre><code>var possibleSegments = 
      from epl in eventPotentialLegs
      join sd in segmentDurations on 
          new { 
              epl.ITARequestID, 
              epl.ITASliceNumber, 
              epl.DepartAirportAfter, 
              epl.AirportId_Origin, 
              epl.AirportId_Destination 
          } 
          equals 
          new { 
              sd.ITARequestId, 
              sd.SliceIndex, 
              sd.OriginAirport, 
              sd.DestinationAirport 
          }
      where
          epl.DepartAirportAfter &gt; sd.UTCDepartureTime 
          and 
          epl.ArriveAirportBy &gt; sd.UTCArrivalTime
      select new PossibleSegments{ ArrivalTime = sd.arrivalTime };
  </code></pre>
  
  <p>The joining does not work correctly.  What am I doing wrong?</p>