2012-02-06 23 views
0

我想使用Salesforce元数据API缓存元数据组件的列表,例如ApexClass。Salesforce元数据apis

我得到的所有的Apex类的列表(总量不为2246),它们在Salesforce的使用下面的代码和它的花费过多时间来检索这些文件的名称:

ListMetadataQuery query = new ListMetadataQuery(); 
query.type = "ApexClass"; 
double asOfVersion = 23.0; 

// Assume that the SOAP binding has already been established. 

FileProperties[] lmr = metadataService.listMetadata(
     new ListMetadataQuery[] { query }, asOfVersion); 


if (lmr != null) 
{ 
    foreach(FileProperties n in lmr) 
    { 
     string filename = n.fileName; 
    } 
} 

我的要求是获取由我的组织开发的元数据组件(Apex类)的列表,以便我可以获得与我相关的Salesforce元数据组件,并且可能可以通过不获取所有类来节省我的时间。

我该如何实现这一目标?

尽快回复。

在此先感谢。

回答

1

我还没有直接使用元数据API,但我建议要么尝试在created by字段上过滤,要么在类上使用前缀名称,以便可以对其进行过滤。

不确定过滤器是否可能!至于速度,我通过Eclipse使用Meta-Data API的经验是,它总是很慢,并且你可以做的事情不多!