Sub Query Where is X in (from ...?

How can i do this? where tsc.TransactionID in (from t in transactions, where ........

        Eg:
        var query = (from tsd in TransactionSampleDetails 
        join tsc in TransactionSamples on  tsd.TransactionSampleID equals tsc.TransactionSampleID
        join qp in QualityParameters on tsd.ParameterID equals qp.ParameterID
        where tsc.TransactionID in (from t in Transactions where t.StockpileID == 7122 select t.TransactionID)
        select new 
        { 
            TransactionID = tsc.TransactionID,
            ParameterName = qp.Parameter,
            ParameterValue = tsd.ActualValue
        });

      

+1


a source to share


1 answer


You can use Contains:

where (from t in Transactions 
       where t.StockpileID == 7122 
       select t.TransactionID).Contains(tsc.TransactionID) 

      



Remember that it would be more efficient and expedient to use a different connection:

join t in Transactions.Where(t => t.StockpileID == 7122)
  on tsc.TransactionId equals t.TransactionID

      

+2


a source







All Articles