关于在ItemAdding时获取“用户和用户组”这个栏的值

ItemAdding代码:

base.ItemAdding(properties);


SPItemEventDataCollection data = properties.AfterProperties;

SPList list = properties.OpenWeb().Lists[properties.ListId];

 

string ownerField = list.Fields.GetField("主要负责人").InternalName;//把中文列名转化成SPItemEventDataCollection 可以识别的列名

 

原本以为data[ownerField]就能获得“用户和用户组”栏的string值,结果不对,

调试发现原来获得的是一个数字,这个数字就是我们网站集里用户的ID,所以后面就好办了:

SPUser projectOwner=properties.OpenWeb().SiteUsers.GetByID(Convert.ToInt32(data[ownerField]));
这样就成功获取了一个SPUser的对象,这时才获得了我想要的值:

projectOwner.LoginName,projectOwner.Name,projectOwner.Email等等,各取所需。

posted @ 2011-11-24 11:56  蒼狼醉  阅读(142)  评论(0)    收藏  举报