2016-05-12 98 views
0

我只是將我的項目從vs2010遷移到vs2012,當我嘗試執行此方法時,該語句似乎無法獲取數據。相同的代碼在vs2010上正常工作。Linq包含從vs2010遷移到vs2012後無法工作

var result2 = (dc.Table1 
    .Where(p => p.Descripcion.Contains(descripcion) && p.Estado == 1) 
    .GroupJoin(dc.Table2, 
     p => p.Codigo, 
     a => a.Codigo, 
     (p, a) => new { p = p, a = a } 
    ) 
    .SelectMany(
     temp => temp.a.DefaultIfEmpty(), 
     (temp, a) => new Listado() 
     { 
      codigo = temp.p.Codigo, 
      descripcion = temp.p.Descripcion, 
      alias = a.Descripcion, 
      id = a.Id 
     }) 
    ) 
    .ToList(); 

任何建議來解決這個問題是值得歡迎的。

+0

所以你得到一個0條目列表? –

+4

這與您的Visual Studio版本沒有任何關係。您是否仍然指向遷移前的相同數據源? –

+0

是的,我得到0項,它是相同的數據庫 –

回答

0

我通過升級到EntityFramework6來解決它,似乎EntityFramework5仍然有一些錯誤。我正在使用相同的方法和數據,但現在我得到了預期的數據。

0

我想升級EntityFramework時遇到了類似的問題,結果我轉而使用.Any()方法。

相關問題