2016-07-06 53 views
-6

我用EF6,我有這樣的LINQ到實體查詢:如何將linq查詢轉換爲非查詢表達式?

from s in SensorObservationEntities.SensorsMeasures 
      group s by s.SensorUnitId into g 
      let latest = g.OrderByDescending(s => s.MeasureDate).FirstOrDefault() 
      select latest 

我怎麼能它convet非查詢表達式?

+1

憑藉您的信譽數量,您應該知道您需要告訴我們您迄今爲止所嘗試的內容。 –

回答

1

如果要將此轉換爲方法的語法版本,你能做到這一步一步來。我想先在結束並通過工作開始:

  1. selectSelect定義源:

    .Select(g => g.OrderByDescending(s => s.MeasureDate).FirstOrDefault()); 
    
  2. groupGroupBy

    .GroupBy(s => s.SensorUnitId) 
    .Select(g => g.OrderByDescending(s => s.MeasureDate).FirstOrDefault()); 
    
  3. from的來源

    SensorObservationEntities.SensorsMeasures 
    .GroupBy(s => s.SensorUnitId) 
    .Select(g => g.OrderByDescending(s => s.MeasureDate).FirstOrDefault()); 
    
2

你的意思是方法的語法:

SensorObservationEntities.SensorsMeasures.GroupBy(g => g.SensorUnitId) 
      .Select(y => y.OrderByDescending(x => x.MeasureDate).FirstOrDefault());