如何在ItemUpdating事件期间更改字段值

Buz*_*zby 3 c# sharepoint events

我试图在事件接收器中设置ListItem上的字段的值,但它不起作用

我在活动期间所做的一切都是

properties.AfterProperties[<field internal name>] = 1;
Run Code Online (Sandbox Code Playgroud)

没有错误被抛出,但我设置的字段不会改变.我也试过了

properties.ListItem[<field internal name>] = 1;
properties.ListItem.Update();
Run Code Online (Sandbox Code Playgroud)

还试过SystemUpdate();

我知道我打算设置后续属性,但我认为我错过了一个明显的步骤.

谢谢

Kit*_*nke 11

请记住,根据您的事件接收器是否在列表或库上运行,您可能需要使用不同的属性(有关详细信息,请参阅此链接).

假设您在ItemUpdating列表中运行的方法中,您应该需要的是:

base.ItemUpdating(properties);
properties.AfterProperties["InternalName"] = 1;
Run Code Online (Sandbox Code Playgroud)

(由于您在保存之前更改了值,因此无需更新)

我会验证您的事件接收器是否已附加到列表中.您是否能够在修改列表中的项目时调试事件接收器?