我正在尝试将SPFieldDateTime的值复制到事件处理程序中的另一个SPFieldDateTime中,我不得不承认,我很难过。我没有在SPFieldDatetime中设置的明显字段,以下内容不会更改字段的值:
{
SPListItem task = (SPListItem) properties;
task[/* destination field's guid */] = task[/* source field's guid */];
}
代码似乎能够无错误地检索字段。使用SPFieldDateTime time = (SPFieldDateTime)task.Fields[/* either GUID */];
中的任何一个GUID执行时没有错误,调试器似乎有正确的字段:属性中存在正确的值等。
如何设置SPFieldDateTime值?
答案 0 :(得分:0)
上面的失败是我没有在这个执行序列中调用Update。我确实调用了任务的更新,但它是在特权执行区域完成的,该区域与事件处理程序运行的空间隔离。
修复:
{
SPListItem task = (SPListItem) properties;
task[/* destination field's guid */] = task[/* source field's guid */];
task.Update();
}