Tridion 如何从DataExtender检索当前用户?

Tridion 如何从DataExtender检索当前用户?,tridion,tridion-2011,Tridion,Tridion 2011,我已经编写了一个DataExtender,它从视图中“隐藏”某些项。其思想是,即使用户可以访问GUI中的任何列表,某些项目也不应在该列表中可见(类似于windows中的系统文件/文件夹,即使您有权阅读它们,它们通常也不可见) 它工作正常,但现在我想给系统管理员一个例外:他们应该总是看到每个项目。但我看不出如何从DataExtender中检索当前用户。这可能吗?如果是这样,怎么做?您可以使用Tridion.Web.UI.Core.Utils.GetUserName()获取Windows用户名,然后

我已经编写了一个DataExtender,它从视图中“隐藏”某些项。其思想是,即使用户可以访问GUI中的任何列表,某些项目也不应在该列表中可见(类似于windows中的系统文件/文件夹,即使您有权阅读它们,它们通常也不可见)


它工作正常,但现在我想给系统管理员一个例外:他们应该总是看到每个项目。但我看不出如何从DataExtender中检索当前用户。这可能吗?如果是这样,怎么做?

您可以使用
Tridion.Web.UI.Core.Utils.GetUserName()
获取Windows用户名,然后创建自己的核心服务客户端,调用Impersonate,然后调用GetCurrentUser

我对隐藏物品有复杂的感觉。。。如果编辑创建了一个同名的项目,他们会收到一条冲突警告消息,但不理解为什么…我完全同意。我有一个非常具体的原因:我需要对某些用户的视图隐藏“受众管理”节点。这样,我可以让他们管理通过通讯组列表筛选的联系人,而不让他们看到通讯簿中的所有联系人。在本例中,您描述的冲突无法发生,因为无法在该级别创建任何内容。