使用事件接收器在文档库中使用itemadded
事件上载文件时的SharePoint 2010。在获取文件属性的情况下,它将更改,因为该文件在文件属性的自定义选项卡中包含相同的属性。所以SPListItem
属性不会出现,所以如何在sharepoint中上传文件时清除文件自定义属性请帮助我。
我设置为ItemAddedCol
默认值设置为false
,但我会显示为true。问题是我正在上传extesnion .ppt 的文件。文件属性和转到自定义标签集添加了一些文件,例如ItemAddedCol
,File Size
。因此,这些值正在考虑如何在项目添加事件中清除这些自定义字段。
string size = Convert.ToInt32(listitem["File Size"]);
statusupdate = Convert.ToString(listitem["ItemAddedCol"]);
答案 0 :(得分:1)
我不确定这是否是您想要的,但是当您将文件上传到文档库时,设置自定义属性会调用 项目更新 事件。您应该能够为ItemUpdated
(或ItemUpdating
)事件编写事件接收器并清除您想要的属性。
所以代码看起来像这样:
public virtual void ItemUpdated(SPItemEventProperties properties, bool isCheckIn)
{
try
{
this.EventFiringEnabled = false;
SPListItem listItem = properties.ListItem;
//clear value in your custom column
listItem["myCustomColumnName"] = null;
listItem.Update(); //or listItem.SystemUpdate()
}
finally
{
this,EventFiringEnabled = true;
}
}
我没有测试过这段代码,所以如果您在运行时遇到任何问题,请告诉我。