sharepoint对象模型项添加eventreceiver
我正在尝试在列表中添加一个事件接收器以进行itemadding。我有一个名为EmployeeName people picker的字段,我需要从中获取该特定员工在添加项目时的userprofile,并尝试从userprofile自动更新EmployeeNo 我使用如下:但不工作sharepoint对象模型项添加eventreceiver,sharepoint,Sharepoint,我正在尝试在列表中添加一个事件接收器以进行itemadding。我有一个名为EmployeeName people picker的字段,我需要从中获取该特定员工在添加项目时的userprofile,并尝试从userprofile自动更新EmployeeNo 我使用如下:但不工作 public override void ItemAdding(SPItemEventProperties properties) { base.ItemAdding(prope
public override void ItemAdding(SPItemEventProperties properties)
{
base.ItemAdding(properties);
UserProfileManager profileManager = new UserProfileManager(context);
UserProfile myProfile = profileManager.GetUserProfile(item["EmployeeName"].ToString());
if (myProfile["EmployeeNo"].Value != null)
{
properties.AfterProperties["EmployeeNo"] = (myProfile["EmployeeNo"]).ToString();
}
item.Update();
}
请在这方面帮助我。检查您是否使用了正确的内部列名。 你从哪里得到“物品”?尝试改用properties.ListItem。
不要调用properties.ListItem.update()(或代码中的item.update())。这不起作用。是不是我必须这样带GetUserProfile(域\用户名)如果是这样,如何从输入为EmployeeName的字段中获取帐户名如果是“EmployeeName”,则应获取具有属性的员工名。ListItem[“EmployeeName”]是字段的内部名称。是的,我这样做了..根据itemadding事件中尚未添加项的EmployeeName获取userprofile时,这是正确的方法吗。