我是分享点开发的新手,我有任务可以做。我需要为以下逻辑添加几行代码。
这是我的伪代码:
public override void ItemUpdating(SPItemEventProperties properties)
{
try {
this.DisableEventFiring();
//Need to write my logic here
base.ItemUpdating(properties);
}
catch (Exception ex) {
}
finally {
this.EnableEventFiring();
}
}
有人可以指导我如何编写上述逻辑的代码吗?如果您有任何具有类似逻辑的示例代码,请分享。这对我有帮助。
提前致谢!
答案 0 :(得分:1)
此代码可能会帮助您。也许您需要根据需要调整它,但您需要访问的属性是相同的。
public override void ItemUpdating(SPItemEventProperties properties)
{
//this will get your title before updating
var oldName = properties.ListItem["Title"].ToString();
//and this will get the new title
var newName = properties.AfterProperties["Title"].ToString();
if (newName != oldName)
{
using (var site = new SPSite("http://yoursitename"))
using (var web = site.OpenWeb())
{
var list = web.Lists["Tasks"];
var items = list.Items.OfType<SPListItem>().Where(i => (string) i["Title"] == oldName);
foreach (var item in items)
{
item["Title"] = newName;
item.Update();
}
}
}
base.ItemUpdating(properties);
}