Skip To Content

WebFeatureLayer.AddAsync (.NET)

Этот метод добавляет новый векторный веб-слой с дополнительным запросом фильтра. В результате будут нарисованы объекты в области проекта. Если добавляемый веб-слой является безопасным, пользователю будет предложено ввести учетные данные в соответствии с требованиями портала.

Декларация

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

Параметры

ТипИмяОписаниеОбязательный

Документ

doc

Документ AutoCAD, на основании которого следует действовать.

required

string

url

URL-адрес допустимого векторного веб-слоя, добавляемого к чертежу.

required

string

definitionExpression

Выражение where-clause, использующееся для ограничения объектов слоя по значениям атрибутов. Синтаксис where-clause определяется данными источника.

optional

string

branchName

Имя сервис-ориентированной версии, доступной на векторном веб-слое.

дополнительно

Возвращаемые значения

ТипОписание

(bool Success, ICollection<string> WebFeatureLayerNames)

Именованный кортеж, в котором первое значение является значением Success, а второе — значением WebFeatureLayerNames. Булево значение Success указывает, были ли успешно добавлены веб-слои объектов. Значение WebFeatureLayerNames представляет собой коллекцию имен добавленных веб-слоев объектов.

Замечания по условиям возникновения ошибок

Этот метод может выдать исключение или вернуть null, если параметр является некорректным.

Пример 1

Выведите результат успешного добавления всех PoolPermits веб-слоев объектов без какого-либо фильтра запроса.

// 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

Выведите результат успешного добавления USA_States_Generalized веб-слоя объектов и объектов, где значение поля STATE_NAME начинается с буквы N.

// 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

Выведите результат успешного добавления editor01.triangle ветки веб-слоя объектов Damage_To_Commercial_Buildings.

// 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-адрес.

DocFeatureLayer.Add - метод .NET, который добавляет определение векторного слоя чертежа AutoCAD.

esri_webfeaturelayer_add — функция AutoLISP, которая добавляет новый веб-слой объектов с дополнительным фильтром запроса.