从附件网址获取SPListItem?

时间:2011-11-17 10:55:11

标签: c# sharepoint

我试图从附件网址获取SPListItem。 我正在尝试的是什么:

string url = "Lists/Tasks/Attachments/27/unnamed.png";
SPListItem i = new SPSite(url).OpenWeb().GetFile(url).Item;

但是“GetFile(url)”获得的SPFile的属性“Item”为null,因此不会出现问题。 “Item”属性似乎只适用于Document-Libraries中的SPFiles ... 有人采用另一种方法吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

如果我的记忆服务于我,则附件存储在文件夹/ ListName / Attachments / ItemID / attachment中。所以你在这个网址中有项目ID,并且可以使用它来通过list.GetItemById方法检索你想要的项目。

答案 1 :(得分:-2)

遗憾的是,对象模型中的附件不太受支持。我认为唯一的方法是解析网址并获取项目ID。没有像SPAttachment这样的对象,只有SPAttachmentCollection,但它不是一个字符串集合。

SPFile.Item

仅适用于文档库中的文档,否则为null。