在使用默认成员提供程序的Umbraco 4.11中,是否可以访问未登录用户的个人资料?
我已将自定义配置文件属性添加到web.config,在后台的MemberType上添加了相同的道具,我正在创建配置文件:
MembershipUser member = System.Web.Security.Membership.CreateUser(username, password, email);
var profile = System.Web.Profile.ProfileBase.Create(member.UserName);
profile["FirstName"] = "John";
profile.Save();
我可以通过以下方式获取当前登录的用户个人资料:
var currentUser = umbraco.cms.businesslogic.member.Member.GetCurrentMember();
但是如何获取未登录用户的个人资料?
例如。我试过了:
var profile = System.Web.Profile.ProfileManager.FindProfilesByUserName(System.Web.Profile.ProfileAuthenticationOption.All, username);
但这会导致“不支持指定方法”异常。
这将在管理服务中使用,该服务与外部提供商执行定期同步,因此不会有用户上下文。
答案 0 :(得分:1)
您再次使用ProfileBase.Create()
。别担心,它实际上并没有“再创建”配置文件。
var profile = ProfileBase.Create(username);
string firstName = profile["FirstName"];
有关详细信息,请参阅: