В настоящее время мы с другом создаем довольно простую библиотеку LINQ to ESRI, которая отправляет HTTP-запросы в ArcGIS MapServer, а затем соответствующим образом анализирует ответ JSON.
В настоящее время все работает прекрасно, кроме одной вещи; Несколько где заявления. Это кажется простой проблемой синтаксиса, но я не могу заставить ее работать или узнать, поддерживается ли она. Я пытаюсь сделать что-то подобное.
Не работает:
MapServer/22/query?where=MY_FIELD='Whatever'&where=MY_OTHER_FIELD='Whatever'&f=json
Работает:
MapServer/22/query?where=MY_FIELD='Whatever'&f=json
Также работает:
MapServer/22/query?where=MY_OTHER_FIELD='Whatever'&f=json
Я пробовал несколько разных версий синтаксиса, но не могу заставить работать несколько операторов Where. Это мой основной источник для разбивки этих запросов. Если кто-то знает синтаксис для этого или знает источник, который говорит, что это невозможно.
arcgis-server
rest
json
html
JSmith
источник
источник
Ответы:
Придерживайтесь одного параметра where в строке запроса. Вот пример предложения where, попадающего в несколько полей: http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/SanFrancisco/311Incidents/MapServer/0/query?geometryType=esriGeometryPoint&spatialRel=esriSpatialRelIntersects+WW8827W278 + ST% 27 + или + ObjectID% 3D193510 & returnIdsOnly = ложно & returnGeometry = истина & outFields =% 27status, ObjectID% 27 & F = HTML
источник