Этот метод добавляет новый векторный веб-слой с дополнительным запросом фильтра. В результате будут нарисованы объекты в области проекта. Если добавляемый веб-слой является безопасным, пользователю будет предложено ввести учетные данные в соответствии с требованиями портала.
Декларация
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, которая добавляет новый веб-слой объектов с дополнительным фильтром запроса.