SharePoint:在更新列表项之前猜测附件路径

时间:2009-08-27 13:16:12

标签: sharepoint

我有一些代码将列表项插入列表...

然后我有了这段代码

  SPFolder folder = web.Folders["Lists"].SubFolders[list.RootFolder.Name].SubFolders["Attachments"].SubFolders[item.ID.ToString()];

                foreach (SPFile file in folder.Files)
                    {
                        string attachmentName = this.downloadedMessageID + ".xml";
                        if (file.Name == attachmentName)
                        {
                            SPFieldUrlValue value = new SPFieldUrlValue();
                            value.Description = this.downloadedMessageID + ".xml"; 
                            value.Url = this.SiteAddress + file.Url;
                            item["ZFO"] = value; 
                        }
                    }

除了一个问题之外没问题......在此代码实际运行之前...我需要调用item.update()方法将项目保存到SharePoint ...

但正如你所看到的,还有更多的工作要做......在调用item.update后......

所以这意味着......我有

   work
   item.update();
   more work
   item.update(); 

我遇到的问题是我真的只想

  work
  item.update(); 

因此,在任何失败的情况下,整个事件将立即失败或立即传递....(几乎像SQL事务)。

因此,阻止我这样做的是 - 我需要设置一个指向列表项中某个字段的超链接,这将是列表附件集合中的附件。

有没有办法在没有将列表项保存到MOSS的情况下预测此地址?

1 个答案:

答案 0 :(得分:3)

附件路径取决于商品ID,在您保存之前我不相信您的商品会有ID。您是否考虑过将附件存储在文档库中,并按照您尝试设置的字段进行链接?

交易操作并不完全是SharePoint的强项。