FeatureLayer.GetAttributes 方法将返回工程图的指定要素图层中所有要素的所有字段名称和值的字典集合。 该集合将包含工程图中指定要素图层的每个要素的字典。 如果提供了字段值,则将仅返回请求的字段。
声明
public IEnumerable<Dictionary<string, IConvertible>> Esri.ArcGISForAutoCAD.FeatureLayer.GetAttributes(Document doc, string flName, string sublayerName = null, string field = null)
参数
| 类型 | 名称 | 描述 | 必填 |
|---|---|---|---|
文档 | doc | 要进行操作的 AutoCAD 文档。 | 必填 |
string | flName | 工程图中现有的要素图层名称。 | 必填 |
string | sublayerName | 工程图中现有的要素子图层名称。 | 可选 |
| string | field | 工程图中现有的要素图层字段名称。 | 可选 |
返回
| 类型 | 描述 |
|---|---|
IEnumerable<Dictionary<string, IConvertible>> | 指定要素图层中所有要素的所有属性的字典集合。 |
错误条件备注
如果参数无效,则此方法可能会抛出异常或者返回 null。
示例
在当前工程图中,使用“打开子图层”打印 Shelters 要素图层的三个要素的所有属性。 // Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
// Get the attributes
var sheltersAttributes = Esri.ArcGISForAutoCAD.FeatureLayer.GetAttributes(doc, "Shelters", "Open");
// Print the attributes
foreach (var dictionary in sheltersAttributes)
{
foreach (var attribute in dictionary)
{
doc.Editor.WriteMessage("\n{0}: {1}", attribute.Key, attribute.Value);
}
}
/* Example output
EntityHandle: 30C
EntityType: POINT
facname: ARLENE WELCH ELEMENTARY SCHOOL
capacity: 609
hoursoper: 8:30am-5:00pm
sheltstat: Open
EntityHandle: 2FD
EntityType: POINT
facname: OLIVER JULIAN KENDALL ELEM SCHOOL
capacity: 656
hoursoper: 8:30am-5:00pm
sheltstat: Open
EntityHandle: 2EE
EntityType: POINT
facname: CLIFFORD CRONE MIDDLE SCHOOL
capacity: 093
hoursoper: 6:00am-7:00pm
sheltstat: Open
*/
另请参阅
Attributes.Get - 此 .NET 方法用于获取要素图层字段名称及其属性值的字典。
esri_featurelayer_getattributes - 此 AutoLISP 函数用于获取要素图层中每个要素的属性。