/// <summary>
/// 根据Fields进行属性查询
/// </summary>
/// <param name="FeaClass">要素集</param>
/// <param name="QueryKeyWords">查询关键字</param>
/// <returns></returns>
public List<IFeature> Query(IFeatureClass FeaClass, string QueryKeyWords)
{
////TODO Field查询语句
List<IFeature> lstFea = null;
try
{
if (FeaClass == null)
{
return null;
}
IField pTmpField = null;
string sWhereExpress = "";
//// 遍历字段 获得查询条件
for (int i = 0; i < FeaClass.Fields.FieldCount; i++)
{
pTmpField = FeaClass.Fields.get_Field(i);
if (pTmpField.Type != esriFieldType.esriFieldTypeString)
{
continue;
}
sWhereExpress += string.Format("{0} LIKE '%{1}%' OR ", pTmpField.Name, QueryKeyWords);
}
sWhereExpress = sWhereExpress.Substring(0, sWhereExpress.LastIndexOf("OR") - 1);
IQueryFilter pQueryFilter = new QueryFilterClass();
pQueryFilter.WhereClause = sWhereExpress;
IFeatureCursor pFeaCursor = FeaClass.Search(pQueryFilter, false);
IFeature pFea = pFeaCursor.NextFeature();
while (pFea != null)
{
lstFea.Add(pFea);
pFea = pFeaCursor.NextFeature();
}
}
catch (Exception ex)
{
return null;
}
return lstFea;
}
Fields属性查询
最新推荐文章于 2023-07-10 16:19:19 发布