【发布时间】:2014-06-09 18:49:31
【问题描述】:
public override void ItemAdding(SPItemEventProperties properties)
{
base.ItemAdding(properties);
SPItem itemBeingAdded = properties.ListItem;
var startTime = itemBeingAdded["Start Time"];
// Some code goes here.
}
我在日历列表中添加项目时触发此事件。它正在被解雇。没问题。但我没有从properties 获得任何价值。在上面的代码中startTime 什么也没给我。实际上,我想访问正在添加的项目的列字段(在我的情况下为properties)。
当用户单击保存按钮时,我如何在后面的代码中获取列值(在ItemAdding(SPItemEventProperties properties) method 内)。比方说,我需要 Start Time 和 End Time 将它们与其他一些值进行比较。问题出在ItemAdding 方法中。 ItemUpdating 工作正常。
public override void ItemUpdating(SPItemEventProperties properties)
{
base.ItemUpdating(properties);
SPItem itemBeingAdded = properties.ListItem;
var startTime = itemBeingAdded["Start Time"];
}
【问题讨论】:
-
你检查过
SPItemEventProperties的内容吗?是否有带有"Start Time"键的条目?字段的内部名称可能与表单中显示的名称不同。 -
感谢您的回复。我将尝试使用内部名称。
-
结果和以前一样。内部名称也不起作用。
-
您是否使用调试器的watch capability 检查了
SPItemEventProperties的内容?
标签: c# sharepoint sharepoint-2007 event-receiver