Un ami et moi créons actuellement une bibliothèque LINQ to ESRI assez simple qui envoie des requêtes HTTP à un ArcGIS MapServer, puis analyse la réponse JSON de manière appropriée.
Tout fonctionne actuellement magnifiquement, sauf une chose; plusieurs instructions Where. Cela semble être un simple problème de syntaxe, mais je n'arrive pas à le faire fonctionner ou à savoir s'il est pris en charge. J'essaie de faire quelque chose comme ça.
Ne fonctionne pas:
MapServer/22/query?where=MY_FIELD='Whatever'&where=MY_OTHER_FIELD='Whatever'&f=json
Fonctionne:
MapServer/22/query?where=MY_FIELD='Whatever'&f=json
Fonctionne également:
MapServer/22/query?where=MY_OTHER_FIELD='Whatever'&f=json
J'ai essayé plusieurs versions de syntaxe différentes, mais je n'arrive pas à obtenir une instruction Where multiple pour fonctionner. Ceci est ma principale source pour décomposer ces requêtes. Si quelqu'un connaît la syntaxe pour le faire, ou connaît la source qui dit que ce n'est pas possible.
la source
Réponses:
Respectez un seul paramètre where dans votre chaîne de requête. Voici un exemple de clause where frappant plusieurs champs: http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/SanFrancisco/311Incidents/MapServer/0/query?geometryType=esriGeometryPoint&spatialRel=esriSpatialRelIntersects&where=address%3D%27875+ + ST% 27 + ou + objectid% 3D193510 & returnIdsOnly = false & returnGeometry = true & outFields =% 27status, objectid% 27 & f = html
la source