0

我想我已经浏览了有关 stackoverflow 的每个示例,但我遗漏了一些对我的问题至关重要的东西。

我正在尝试加入两个类型为“uniqueidentifier”的字段。

下面是我的代码:

   var s = (from d in db.aspnet_Memberships 
            join u in db.Merchants on d.aspnet_User equals u.aspnet_UserID  
            where u.MerchantID == MerchantID 
            select d.IsApproved).SingleOrDefault<System.String>();

我在连接时收到以下错误“连接子句中的表达式之一不正确。类型推断在调用 'Join' 时失败。”

感谢您提供任何帮助。

4

1 回答 1

2

看起来你正试图加入错误的事情。aspnet_User 不是表吗?

尝试:

var s = (from d in db.aspnet_Memberships 
         join u in db.Merchants on d.UserId equals u.aspnet_UserID  
         where u.MerchantID == MerchantID 
         select d.IsApproved).SingleOrDefault<System.String>();

或者:

var s = (from d in db.aspnet_Memberships 
         join u in db.Merchants on d.aspnet_User.UserId equals u.aspnet_UserID  
         where u.MerchantID == MerchantID 
         select d.IsApproved).SingleOrDefault<System.String>();

另外,我不认为 .SingleOrDefault 会起作用,查询正在选择一个布尔值。

于 2013-03-22T17:48:36.423 回答