有没有办法在没有try / catch块的情况下检查是否存在SPList或SPListItem?

时间:2009-09-03 19:17:08

标签: sharepoint sharepoint-2007

在SharePoint中,我希望能够在对它执行操作之前检查特定的List或ListItem是否存在,但是似乎没有办法在不简单地捕获ArgumentException的情况下执行此操作。当然有更好的方法吗?

1 个答案:

答案 0 :(得分:4)

要查找SPList的实例,您可以使用linq解决方案:

SPList instance = (from SPList list in web.Lists   
                   where list.RootFolder.Name.Equals(name) 
                   select list).FirstOrDefault();   

if (instance != null)   
{
...// process

可以使用类似的解决方案来查找SPListItem的实例

FirstOrDefault就是一招。默认值为null(不是例外)。

<强>更新

作为评论,这行代码:

from SPList list in web.Lists

与写作相同

from list in web.List.Cast<SPList>