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等等,各取所需。