1

我的用例:我有 2 个 SPList,让我们称一个事件,其他与会者。我想要什么:根据当前用户显示“注册”或“取消注册”按钮(在事件列表显示的可视 Web 部件中)可以位于当前事件的与会者列表中。因此,如果当前用户注册了该事件,page_load 应该显示“取消注册”按钮或“注册”按钮,如果他没有。

我通过以下方式获取当前项目

currEventItem = (SPListItem)SPContext.Current.Item;

而当前用户通过

currentUser = website.CurrentUser; userString = currentUser.ID.ToString() + ";#" + currentUser.LoginName.ToString();

现在我想使用 System.Linq (Linq to Objects) 来执行以下查询 (pseudo-sqlsyntax):

select * from AttendeeList where userString equals attendeeList.Name AND currEventItem.Title equals AttendeeList.EventTitle

AttendeeList 中的 Name-Field 是一个用户(个人或组,这里使用德语版本,所以我希望这是实际的翻译)字段。

我的问题和实际问题:我没有让 linq 语法起作用。有人可以帮我吗?会很好!

编辑:稍后,我想根据结果是 NULL 还是非 NULL 显示相应的按钮。希望这有效吗?如果这不是要走的路,将不胜感激另一个解决方案:)

4

1 回答 1

2

这将为您提供真或假,您可以将其应用于您的复选框?:

Boolean exists = (AttendeeList.Where(m=> m.Name == userString)
                 .Where(m=> m.EventTitle == currEventItem.Title).Count() > 0);
于 2012-12-03T10:12:23.747 回答