我编写了一个 Data Extender 类和编辑器扩展,当您浏览 CME 中的列表(文件夹和结构组)时,它可以正确显示一些附加列。我必须注册我的类来处理 GetList、GetListSearch、GetListUserFavorites 和 GetListCheckedOutItems 等命令。
我注意到的是,即使为 CME 中的下拉列表加载了一个说模式列表,代码也会运行(比如在创建新组件时,您会在下拉列表中获得模式列表) . 因此,即使在这种情况下不需要我的额外数据列,代码仍在执行中,它会减慢速度。
似乎是在这些情况下调用的 GetList 命令。所以,我不能只根据命令跳过处理。因此,我开始查看该类为列表接收的 XML,并且我注意到在为下拉菜单运行代码时,Managed="0"
XML 中有一个。例如:
- 对于结构组列表:
<tcm:ListItems Managed="64" ID="tcm:103-546-4">
- 对于文件夹列表:
<tcm:ListItems Managed="16" ID="tcm:103-411-2">
- 但是对于 Schema 列表:
<tcm:ListItems ID="tcm:0-103-1" Managed="0">
- 对于显示类别关键字值的下拉菜单:
<tcm:ListItems Managed="0" ID="tcm:103-506-512">
那么,我可以只使用这个 Managed="0" 作为标志来指示正在处理的列表不会显示我的其他列并且我可以退出处理吗?