簡體   English   中英

錯誤連接表與 lambda 表達式 c#

[英]Error join table with lambda expression c#

我有 2 個表,我想用 lambda 表達式加入它們。

代碼如下所示:

  var maintenance = maintenanceService.GetAll();
  var mDetail = maintenanceDetailService.GetAll();

  var data = maintenance.Join
  (
      mDetail,
      m => m.Id,
      md => md.MaintenanceId,
      (i, m, md) => new VehicleFuelReportViewModel 
                    { 
                       MaintenanceDate = m.MaintenanceDate 
                    }
 );

我收到此錯誤:

錯誤 12 無法從用法。 嘗試明確指定類型參數。

maintenancemDetailIEnumerable<> 誰能幫我? 謝謝

class NewVehicleFuelReportViewModel
{
   public int Index { get; set; }
   public MaintenanceDate { get; set; }
}

var data = maintenance.Join(mDetail,
   m => m.Id,
   md => md.MaintenanceId,
   ( m, md) => new VehicleFuelReportViewModel { 
      MaintenanceDate = m.MaintenanceDate 
   });
   int i = 0;
   var dataWithIndex = data.select(d=>{
   var tempdata = new NewVehicleFuelReportViewModel();
   tempdata.Indx = i++;
   tempdata.MaintenanceDate = d.MaintenanceDate;
   return tempdata;
}).ToList();

在第三個 lambda 中沒有采用索引參數的Join重載。 如果您需要結果中的數字列,請執行后續Select

var data = maintenance.Join(mDetail,
   m => m.Id,
   md => md.MaintenanceId,
   (m, md) => m.MaintenanceDate)
                      .Select((i, m) new VehicleFuelReportViewModel { 
      MaintenanceDate = m.MaintenanceDate,
      Index = i}) ;

雖然我很困惑,為什么你正在做一個Join ,如果你不使用從連接表的任何數據。 您的意思是統計相關記錄嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM