Sharepoint 中的用户组在对象模型中是SPGroup,在使用 SpWeb.SiteGroups.Add()方式添加一个SPGroup时,这里写的描述在网站设置里面看人员和组是没有问题的。但是如果用一个组添加成功后再用代码来修改SPGroup.Description 时在网站上看到改组的描述是没有变化的,还是很以前一样,如果在页面修改了该组的描述再代码中跟踪通过SPGroup.Description 来查看也是没变化的。怀疑两个信息不是同一个东西。再网上搜了一下,在MSDN中到了了相关描述详见
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spgroup.aspx
具体说来就是,用户组中的描述是存储在网站集跟站点下的“用户信息列表”中有一个“描述”的栏。用户信息列表中存储了该站点集下所有的用户和用户组相关一些信息描述。感兴趣可以用 U2U CAML Query Builder 来查看其中的内容和信息。
附上更改代码
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spgroup.aspx
具体说来就是,用户组中的描述是存储在网站集跟站点下的“用户信息列表”中有一个“描述”的栏。用户信息列表中存储了该站点集下所有的用户和用户组相关一些信息描述。感兴趣可以用 U2U CAML Query Builder 来查看其中的内容和信息。
附上更改代码
Code
1 strgroup.Name = strUserGroup;
2 strgroup.Description = description;
3 strgroup.Update();
4 AddGroupIsRight = true;
5
6 SPQuery groupQuery = new SPQuery();
7 groupQuery.Query = string.Format("<Where><Eq><FieldRef Name='ID' /><Value Type='Counter'>{0}</Value></Eq></Where>", strgroup.ID.ToString());
8 SPList userInfomationList = spWeb.Site.RootWeb.Lists["用户信息列表"];
9 SPListItemCollection items = userInfomationList.GetItems(groupQuery);
10 if ((items != null) && (items.Count == 1))
11 {
12 SPListItem item = items[0];
13 item["描述"] = description;
14 item.Update();
15 }
1 strgroup.Name = strUserGroup;
2 strgroup.Description = description;
3 strgroup.Update();
4 AddGroupIsRight = true;
5
6 SPQuery groupQuery = new SPQuery();
7 groupQuery.Query = string.Format("<Where><Eq><FieldRef Name='ID' /><Value Type='Counter'>{0}</Value></Eq></Where>", strgroup.ID.ToString());
8 SPList userInfomationList = spWeb.Site.RootWeb.Lists["用户信息列表"];
9 SPListItemCollection items = userInfomationList.GetItems(groupQuery);
10 if ((items != null) && (items.Count == 1))
11 {
12 SPListItem item = items[0];
13 item["描述"] = description;
14 item.Update();
15 }