此方法将使用可选过滤查询添加新 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 要素图层。