sharepoint - 如何在 SharePoint 中存储特定于用户的数据

标签 sharepoint wss sharepoint-2010

我需要将一些特定于用户的数据存储在 SharePoint 中,并让用户通过自定义 Web 部件进行访问。假设有一个最喜欢的 URL 列表。存储这些信息最直接的方法是什么?

  • 一些我不知道的 SPUser 或类似内容的内置属性包。
  • SPList,通过用户列关联。
  • 自定义数据库表,通过 SPUser ID 关联。
  • 不然呢?

对我来说听起来像是 RTFM,但我可能向 Google 提出了错误的问题。

[更新]

我们最终将这些信息存储在固定位置的一个简单列表中,并使用“人员”字段进行过滤。也许确实是最简单的解决方案,但从技术上讲,我认为下面标记的答案更好。

最佳答案

如果您想让每个用户在整个网站集中重复使用它们,您可以将字段添加到用户信息列表中。您可以向 Web 部件解决方案添加功能接收器,该功能接收器可以创建此列,或者检查此列是否存在于用户信息列表中以确保该列存在。

用户信息列表是 SharePoint 用于存储用户信息的标准 SharePoint 列表。 要访问用户信息列表,您可以转到网站集的根网站并使用 SiteUserInfoList 属性

EG

SPList userInformationlist = SPContext.Current.Site.RootWeb.SiteUserInfoList;
//Or 
SPWeb web = SPContext.Current.Site.RootWeb;
SPList userInformationlist = web.SiteUserInfoList;

要访问用户列表项,您可以使用用户 ID 从用户信息列表中获取列表项

EG

SPListItem currentUserItem = userInformationlist.GetItemById(web.CurrentUser.ID);

如果您使用 MOSS,您可以将此信息存储在用户配置文件中,并使其在网站集中可用,这不需要启用“我的网站”。您需要使用用户配置文件类来访问它。

关于sharepoint - 如何在 SharePoint 中存储特定于用户的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2756696/

相关文章:

c# - 共享点 "Could not load file or assembly" "The system cannot find the file specified"

sharepoint - SharePoint 列表在基于 SOA 的企业中是邪恶的吗?

c# - 如何检查一个单词是否以给定字符开头?

SharePoint 2007 Publishing 站点开发和部署

php - wss 在 apache 服务器上故障转移 https

c# - Sharepoint UpdateListItems 列表未更新

sharepoint - 今天计算列问题的任何解决方案是 SharePoint?

javascript - 如何在我们编写 javascript 的脚本编辑器中的 SharePoint 中进行调试?

c# - 如何像 SQL 连接一样工作 CAML 连接?

css - 尝试根据选择的组添加 SPusers 列表