C# Sharepoint编码标准

C# Sharepoint编码标准,c#,sharepoint,sharepoint-2010,sharepoint-2007,sharepoint-api,C#,Sharepoint,Sharepoint 2010,Sharepoint 2007,Sharepoint Api,我只是偶然来的: 请让我知道最后5项在poor-->better方面有什么不同。所有这些的原因很简单。编写SPList.Items.Count以获取项目总数时,SPList.Items返回列表中所有项目的集合 您不需要所有项目,这可能是一项昂贵的操作。 通过编写SPList.ItemCount,您可以确保只从数据库中读取一个数字,而不是所有项目 从本质上讲,列表中的所有项目都是如此-如果可以,通常应避免使用整个集合对象(即SPList.items或SPFolder.Files)。类似地,如果多

我只是偶然来的:


请让我知道最后5项在poor-->better方面有什么不同。

所有这些的原因很简单。编写
SPList.Items.Count
以获取项目总数时,
SPList.Items
返回列表中所有项目的集合
您不需要所有项目,这可能是一项昂贵的操作。
通过编写
SPList.ItemCount
,您可以确保只从数据库中读取一个数字,而不是所有项目

从本质上讲,列表中的所有项目都是如此-如果可以,通常应避免使用整个集合对象(即
SPList.items
SPFolder.Files
)。类似地,如果多次使用它们,则应使用局部变量缓存它们

下面是一个使用索引器的示例。假设我有一个Guid,并且想要获取一个项

SPListItem item = list.Items[guid];
看起来很无辜,但实际上是一样的:

SPListItemCollection items = list.Items;
SPListItem item = items[guid];

关键是——SharePoint(和C#真的)不知道你下一步要做什么,也不知道你将如何使用这个集合。从您编写
.Items
的那一刻起,您就已经做了一个缓慢的操作。

这一切的原因很简单。写入SPList.Items.Count以获取项目总数时,SPList.Items返回列表中所有项目的集合。 你不需要所有的物品,这可能是一个昂贵的行动。 通过编写SPList.ItemCount,可以确保只从数据库中读取一个数字,而不是所有项目

从本质上讲,列表中的所有项目都是如此-如果可以,通常应避免使用整个集合对象(即SPList.items或SPFolder.Files)。类似地,如果多次使用它们,则应使用局部变量缓存它们

下面是一个使用索引器的示例。假设我有一个Guid,并且想要获取一个项

SPListItem item = list.Items[guid];
SPListItem=list.Items[guid]

看起来很无辜,但实际上是一样的:

SPListItemCollection items = list.Items;
SPListItem item = items[guid];
SPListItemCollection items=list.items; SPListItem=items[guid]


关键是——SharePoint(和C#真的)不知道你下一步要做什么,也不知道你将如何使用这个集合。你写的那一刻。你已经做了一个缓慢的操作。

如果是语言问题,很抱歉,但你必须更好地解释你的问题,现在几乎没有意义。Hai marek…如果我不清楚,很抱歉。。。。请查找此链接…您可以找到性能较差且更好的表格…我想知道最后5个差异是什么…解释见原始文章,表右上方:访问下表左列中列出的方法和属性将枚举整个SPList.Items集合,并导致性能低下和限制大型列表。相反,请使用右列中列出的选项。感谢您的回复kobi,因此这也将适用于SPList.Items[System.Guid]、SPList.Items[System.Int32]、SPList.Items.GetItemById(System.Int32)??最后一个呢?@Govind-是的
SPList.Items[System.Guid]
首先获取整个集合-
SPList.Items
,然后在其上运行索引器:
[System.Int32]
@Govind-请参阅更新。哦,谢谢!还有这篇文章:很有趣,但看起来他在卖一种产品。