在Sharepoint 2010基于表单的身份验证中,已登录的用户名是什么?

3
在Sharepoint 2010中使用基于表单的身份验证时,假设用户使用用户名"admin"登录,我们的自定义成员身份提供程序名称为"FBAProvider"。在使用此帐户登录后,显示的已登录用户名类似于"i:0#.|FBAProvider|admin"。如何使其显示为应该只是"admin"?
谢谢。
2个回答

1
你使用什么代码来显示用户名?
SPContext.Current.Web.CurrentUser

将会给你一个 SPUser 对象。那里有许多可以使用的属性,假设你的用户信息列表中有正确的信息(如果用户只使用"admin"而不是"FBAProvider::admin"登录时必须如此)。找到包含你寻找的显示信息的字段。

我猜可能是 Email, LoginName 或者 Name


好的,它并不来自任何自定义代码或控件。它来自Sharepoint的welcome.ascx,显示个人操作菜单。如果没有现成的解决方案,似乎我将不得不开发一个自定义用户控件来完成同样的工作... - mbulutay

0

我曾经遇到过同样的问题,并发现它似乎与对数据库的权限有关。该网站的应用程序池正在运行为NetworkSystem,当我把它改成LocalSystem时,用户名就会显示出来。

我建议确保您的应用程序池身份具有访问ASP数据库的权限。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接