Методы

WFS – это протокол для работы с векторными слоями геосервера.

GetDescribe — метод, который предоставляет данные о структуре объекта слоя (названия и типы атрибутов, имя геометрии, тип объекта).

DescribeFeature GetDescribe(Layer layer);
public List GetFeature(Model.Layer layer,
int maxFeatures = 0,
string featureId = null,
double[] bbox = null,
string srs = null,
string sortBy = null,
string[] propertyName = null)
string[] Layer layer экземпляр слоя

GetCapabilities — метод, который возвращает список всех возможностей текущего геосервера данного слоя (список слоев, список поддерживаемых функций и логических операций).

GetCapabilitiesType GetCapabilities(int layserId);
int layserId идентификатор слоя

GetFeature — метод, который возвращает список объектов слоя.

 public List GetFeature(Model.Layer layer,
 int maxFeatures = 0,
 string featureId = null,
 double[] bbox = null,
 string srs = null,
 string sortBy = null,
 string[] propertyName = null)
string[] propertyName имена полей в выборке
Layer layer экземпляр слоя
int maxFeatures количество объектов в выборке
string featureId координаты описывающего прямоугольника
string srs идентификатор srs, например srs = «4326»
string sortBy имя поля для сортировки

WFS-T — это протокол редактирования объектов слоя геосервера через post-запросы.

Insert — метод для добавления нового объекта.

InsertObject(Feature feature)
Feature feature объект слоя; feature.Layer не должен быть null

Update — метод для обновления объекта слоя.

UpdateObject(Feature feature)
Feature feature объект слоя; feature.Layer не должен быть null

Delete — метод для удаления объекта.

 DeleteObject(Feature feature)
Feature feature объект слоя; feature.Layer не должен быть null

Transaction — транзакция; в данном случае это список операций в формате XML/GML.
Имеется класс Transaction, который может содержать от 0 до n элементов транзакции (с операциями обновления, удаления, добавления). Все операции, представленные выше, работают через класс Transaction с одним элементом внутри.

Transaction(Layer layer)  конструктор
Transaction.Elements.Add(ITransactionElement el)  заполнение транзакции
Transaction.Execute() выполнение транзакции

REST API помимо авторизации также поддерживает несколько методов, расширяющих интерфейс геосервера.

GetLayers — метод для возвращения списка слоев.

List< WfsLib.Model.Layer> GetLayers()

GetLayer — метод для возвращения экземпляра класса Layer.

Model.Layer GetLayer(int id))

GetAttributes — метод для получения атрибутов слоя и их сохранения в свойстве Layer.Attributes.

 List GetLayerAttributes(Model.Layer layer)