2012-01-27 80 views
1

当使用SP 2007和需要做一个连接时,我只是将表写入一个sql表,然后使用sql来加入表。 我真的需要做的很简单。 我有一个主列表和用户插入记录的另一个列表可以让我们说出一个子列表。 当用户打开主列表并点击一个项目时,我插入一条记录,包括他们的用户名到子列表 我想显示的用户(基于登录名称)是他们没有阅读的项目和什么项目。 在SQL我可以做类似e.g如何加入2 sharepoint 2010列表

Select * from master where not in(select from child where username ='blalal') 

任何ideas.Not知道,如果这样做的客户端或对象模型。 当然CAML没有加入事先

感谢只要两个列表是通过查找区域关联

回答

0

或者你可以使用从Bendsoft柯莱特.NET连接器加入任何领域。它支持典型的CRUD命令,包括LEFT和INNER联接和UNION。

0

检查这种方法很容易,只要你想加入尽可能多的列表:Link

cawl_QueryBuilder cawl = new cawl_QueryBuilder(); 
cawl.Select("Users_Title"); 
cawl.Select("Users_Age"); 
cawl.Select("Users_Sex"); 
cawl.Select("CarBrand"); 
cawl.Join("UsersList";"OwnerColumn"); 
cawl.Get('UserCarsList'); 

StringBuilder Result = new StringBuilder(); 
foreach (SPListItem item in cawl.ListItemCollection()) 
{ 
    Result.Append(item["Users_Title"].ToString() + 
       item["Users_Age"].ToString() + 
       item["Users_Sex"].ToString() + 
       item["CarBrand"].ToString()); 

} 
Label1.Text = Result .ToString();