Sitecore成员资格维护用户首选项数据

时间:2013-10-04 06:13:42

标签: sitecore membership

我们使用Sitecore开发了一个公共网站。有些公共登录用户可以将项目(文章)标记为已标记,并在浏览网站时为以后的参考添加注释。目前,我们正在使用master数据库中的Sitecore项目维护公共登录用户。 每当登录用户标记文章并添加注释时,我们将子项添加到内容树中的用户项并在那里保存注释内容。 我们已决定迁入Sitecore会员模块,以便我们可以使用它的个人资料信息功能等...

我们面临的问题是导出这些子记事本。使用Sitecore会员模块进行此操作的合适方法是什么?

我们考虑过在master数据库中保留相同的用户结构,并将成员资格用户链接到那些用户项(外键如方法),并从那里引用这些注释。有关这种方法的任何想法吗?

2 个答案:

答案 0 :(得分:1)

目前没有遵循最佳做法,原因有两个:

  1. 您正在管理主数据库中的前向登录而不是成员资格,但是您要转移到成员资格,这是一个很好的决定。请参阅Security API
  2. 您将用户生成的内容(UGC)存储在主数据库中,这意味着您正在对CM实例进行完整的往返。我建议您使用自定义额外数据库来更新它以存储UGC。它可以像将用户名(例如domain\username)映射到关联内容项的表格(在“web”DB中)和实际UGC(来自用户的注释)一样简单。您可以创建一个轻量级的实体框架或LINQ to SQL数据访问层来使用这个额外的数据库。

答案 1 :(得分:0)

我建议您将标记/注释项目移动到文章项目本身下,并将用户ID(Sitecore用户具有Guid ID)存储为标记/注释项目中的字段。

如果需要,您可以通过实施.NET MembershipProvider扩展Sitecore成员资格提供程序或创建自己的成员资格提供程序,这样您就可以在Sitecore主数据库之外存储标记和注释,这种方式可能需要Security API Cookbook