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 を返すことがあります。
例
現在のドローイング内の Open サブレイヤーを含む Shelters フィーチャ レイヤーの 3 つのフィーチャについてすべての属性を印刷します。 // 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 関数です。