2012-11-25 75 views
1

我需要來自2個不同數據庫的數據。我曾嘗試以下由於類型不匹配導致LINQ加入失敗

var User = (from U in _db.TblUsers 
         where U.IsAdmin == false 
         select U).ToList(); 

var AspNewsUser = (from A in _dbAspNet.aspnet_Users       
        select A).ToList(); 


var result = (from U in User 
       join A in AspNewsUser 
       on U.UserID equals A.UserId 
       select U); 

,但我得到了以下錯誤消息

聯接子句中的類型的表達式之一的不正確。 對「加入」的調用中,類型推斷失敗。

+0

'UserId'是否可以爲空? – 2kay

+0

不,它不是可空的。 –

+0

在這兩個集合中UserId都有不同的類型。先檢查一下。 –

回答

0

使用投影,讓他們在同一匿名類型。

var Users = (from U in _db.TblUsers 
        where U.IsAdmin == false 
        select new { UserID = U.UserID }).ToList(); 

    var AspNewsUsers = (from A in _dbAspNet.aspnet_Users       
        select new { UserID = A.UserID }).ToList(); 


    var result = (from i in Users join o in AspNewUsers on i.UserID equals o.UserID).ToList(); 
+2

Concat!=加入。 – usr

相關問題