ASP.NET成员资格getuserbyID

时间:2011-09-05 17:22:52

标签: asp.net asp.net-membership

我如何通过ID获取用户? MembershipUser mu = Membership.GetUser(“UserName”); 但是,我希望通过ID获取用户,但不是按名称获取。

4 个答案:

答案 0 :(得分:4)

MembershipUser u = Membership.GetUser(id);

这将起作用(期望对象ProviderUserKey) - 默认的asp.net成员资格提供者是GUID。

答案 1 :(得分:1)

由于用户名是唯一的,因此您可以查询应用程序数据库Users表以获取特定UserName的{​​{1}}并将结果传递给UserID

答案 2 :(得分:1)

如果你正在使用内置的MembershipProvider,那么你将不得不编写一个帮助方法,它将为你完成这项工作,并根据要查询的Id返回一个MembershipUser实例。

如果您正在使用自己的自定义MembershipProvider,那么您可以为Membership.GetUser()创建方法重载,它将获取Id并返回MembershipUser实例,但是,您需要转换MembershipProvider默认实例到自定义MemberdhipProvider的类型以获得类型安全访问

答案 3 :(得分:1)

如果您使用(或继承)标准SqlMemberShipProvider,则可以使用MembershipProvider.GetUser(providerUserKey, userIsOnline)

其中providerUserKey是GUID,userIsOnline是一个布尔值,表示是否应该更新指定用户的最后活动日期/时间戳。

http://msdn.microsoft.com/en-us/library/ms152128.aspx