属性缓存

属性缓存是用于存储目录中包含的属性数据的本地缓存。通过属性缓存,您不必与服务器直接连接,即可读取属性或对属性数据进行更改。以此方法限制服务器连接可以提高网络性能。用于在服务器和属性缓存之间交换数据的两个方法为 CommitChangesRefreshCache。这些方法是 DirectoryEntry 类的一部分。

CommitChanges 方法所具有的功能与 ADSI 中的 SetInfo 方法的功能相同。它将属性缓存中的数据保存到目录中。通过此方法,您可以首先更改某个对象的多种属性,然后将它们提交到目录。在您修改多个对象的属性时,应首先提交对一个对象的属性更改,然后再更改下一个对象的属性。有关 SetInfo 方法的详细信息,请参阅 MSDN Library(网址为 https://go.microsoft.com/fwlink/?LinkID=27252)中的主题“IADs::SetInfo”。

RefreshCache 方法所具有的功能与 ADSI 中的 GetInfo 方法的功能相同。它将所有对象属性的值从基础目录存储区加载到本地属性缓存中。有关 SetInfo 方法的详细信息,请参阅 MSDN Library(网址为 https://go.microsoft.com/fwlink/?LinkID=27252)中的主题“IADs::GetInfo”。

注意:
如果您修改属性,应首先使用 CommitChanges 方法将更改存储到目录中,然后调用 RefreshCache,否则,在刷新期间这些更改将被覆盖。

在您修改属性时,务必要理解 DirectoryEntry 类的 UsePropertyCache 属性。在 UsePropertyCache 设置为默认值 true 时,必须调用 CommitChanges,以便将更改提交到目录。如果设置为 false,则自动对目录进行更改。

另请参见

参考

System.DirectoryServices
DirectoryEntry

概念

目录对象属性

Send comments about this topic to Microsoft.

版权所有 (C) 2007 Microsoft Corporation。保留所有权利。