Skip To Content

WebFeatureLayer.AddAsync (.NET)

此方法将使用可选过滤查询添加新 web 要素图层。 将绘制工程区域内生成的要素。 如果要添加的 web 图层是安全的,则将提示用户输入门户所需的凭据。

声明

public async Task<(bool Success, ICollection<string> WebFeatureLayerNames)> Esri.ArcGISForAutoCAD.WebFeatureLayer.AddAsync(Document doc, string url, string definitionExpression = "", string branchName = "")

参数

类型名称描述必填

文档

doc

要进行操作的 AutoCAD 文档。

必填

string

url

要添加到工程图的有效 web 要素图层的 URL。

必填

string

definitionExpression

WHERE 子句表达式,用于按属性值限制图层中的要素。 WHERE 子句的语法取决于源数据。

可选

string

branchName

Web 要素图层上可用的分支版本的名称。

可选

返回

类型描述

(bool Success, ICollection<string> WebFeatureLayerNames)

命名元组,其中第一个值为 Success 值,第二个值为 WebFeatureLayerNames 值。 Success 值是一个布尔值,用于指示是否已成功添加 web 要素图层。 WebFeatureLayerNames 值是已添加 web 要素图层名称的集合。

错误条件备注

如果参数无效,则此方法可能会抛出异常或者返回 null

示例 1

打印在不进行任何过滤查询的情况下添加所有 PoolPermits web 要素图层成功。

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
var url = "http://sampleserver6.arcgisonline.com/arcgis/rest/services/PoolPermits/FeatureServer";

// Add the web feature layers
var success = await Esri.ArcGISForAutoCAD.WebFeatureLayer.AddAsync(doc, url);

// Print the web feature layer names
if (success.Success == true)
{
  foreach (var name in success.WebFeatureLayerNames)
  {
    doc.Editor.WriteMessage("\n" + name);
  }
}

/* Example output 
No_Permit
Has_Permit
*/

示例 2

打印在 STATE_NAME 字段值以字母 N 开头的位置添加 USA_States_Generalized web 要素图层和要素成功。

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
var url = "https://esri.maps.arcgis.com/home/item.html?id=8c2d6d7df8fa4142b0a1211c8dd66903";
var definitionExpression = "STATE_NAME LIKE \'N%\'";

// Add the web feature layer
var success = await Esri.ArcGISForAutoCAD.WebFeatureLayer.AddAsync(doc, url, definitionExpression);

// Print the web feature layer name
if (success.Success == true)
{
  doc.Editor.WriteMessage(success.WebFeatureLayerNames.First());
}

/* Example output 
USA_States_Generalized
*/

示例 3

打印添加 Damage_To_Commercial_Buildings web 要素图层的 editor01.triangle 分支成功。

// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
var url = "https://sampleserver7.arcgisonline.com/server/rest/services/DamageAssessment/FeatureServer";
var branchName = "editor01.triangle";

// Add the web feature layer
var success = await Esri.ArcGISForAutoCAD.WebFeatureLayer.AddAsync(doc, url, "", branchName);

// Print the web feature layer name
if (success.Success == true)
{
  doc.Editor.WriteMessage(success.WebFeatureLayerNames.First());
}

/* Example output 
Damage_To_Commercial_Buildings
*/

另请参阅

MapLayer.AddAsync - 此 .NET 方法使用指定服务属性将地图或影像图层添加至当前工程图。

WebLayer.AddAsync - 此 .NET 方法使用指定 URL 将新地图图层、影像图层或 web 要素图层添加至工程图。

DocFeatureLayer.Add - 此 .NET 方法用于将文档要素图层定义添加至 AutoCAD 工程图。

esri_webfeaturelayer_add - 此 AutoLISP 函数使用可选过滤查询添加新的 web 要素图层。