2012-02-06 32 views
0

我想加入一个表和LINQ中的列表。从stackoverflow上的帖子,我知道你不能使用联接从表和列表中选择 - 你必须使用.contains。但是当我使用.contains时,我得到同样的错误。我还有什么遗漏?我正在尝试做Linq不支持的事情吗?我应该只写一个支持函数,它将循环访问dailyTotal记录(不需要连接)?尝试使用Linq加入列表和SQL表。包含方法仍然给本地序列不能使用错误

这是我的代码:

Dim count = (from sqlRec in mydatacontext.table, listItem in myList where _ 
    sqlRec.guidIdField.ToString.contains(listItem.IdProperty.toString select sqlRec).count 

它给我试图解决同样的错误,其内容为:“本地序列不能在LINQ被用来查询经营者的SQL实现除包含运算符”

我试图做到这一点(当然,语法下面将无法正常工作):

(from sqlRec in table, listItem in List where sqlRec.guid=listId.Id select sqlRec).count 

回答

0

您必须在本地序列使用Contains

Dim count = mydatacontext.table.Where(Function(sqlRec) _ 
       myList.[Select](Function(x) _ 
        listItem.IdProperty.ToString()) _ 
       .Contains(sqlRec.guidIdField.ToString())).Count()