SPUser是SharePoint中的用户类,在获取SPUser对象的时候,可以通过SPWeb.Users、SPWeb.AllUsers或者SPRole.Users来得到一个SPUserCollection,再通过以下两种方式得到用户。
· users[string loginName]:以登录名获取到集合中的用户;
· users[int index]:以集合中的下标获取到用户。
也可以使用如下方法。
· GetByID(int id):通过用户id获取某个用户的对象;
· GetByEmail(string email):通过用户的电子邮件地址获取某个用户的对象。
如果只需要获取到当前用户的话,也可以方便地使用SPWeb.CurrentUser属性。
为某个集合添加、删除用户的时候,使用SPUserCollection类中的方法。
· AddCollection(SPUserInfo[] users):添加一批用户,其中SPUserInfo是一个简单的结构,其中包含Email、LoginName、Name和Notes这四个属性,属性的含义见SPUser类的属性;
· Remove(int index):通过集合中的下标来删除集合中的用户;
· Remove(string loginName):通过用户的登录名来删除该用户;
· RemoveByID(int id):通过用户的id来删除该用户;
· RemoveCollection(string[] loginNames):通过登录名删除一批用户。
SPUser有如下几个常用的属性。
· Email:用户的E-mail地址;
· ID:在当前Site上,唯一标识该用户的id(int型)(只读);
· IsDomainGroup:该用户是否是一个域组(只读);
· IsSiteAdmin:当前用户是否是网站管理员(只读);
· LoginName:用户的登录名(只读);
· Name:用户的显示名称;
· Notes:用户的简要说明;
· ParentWeb:该用户所在的网站(只读);
· Roles:该用户在该网站的角色;
· Xml:该用户信息的xml形式的描述(只读)。
需要值得注意的是,在上述的用户信息中,只有LoginName是唯一的(也是全局唯一的),在不同的网站上,用户可能拥有不同的E-mail、显示名称和简介。
在修改用户的属性之后,需要调用SPUser.Update方法使修改生效。