PROBLÈME

impossible d’effectuer des tâche queryFilter avec GlobalID

Last Published: October 1, 2025

Description

Les tâches queryFilter effectuées avec GlobalID dans ArcGIS Runtime SDK for .NET échouent et aucune liaison n’est établie entre les entités. Voici un exemple de tâche queryFilter ayant échoué :

...
qF.WhereClause = "GlobalID='{DCD212BC-9D7C-48B5-97FD-BBA9454BFBFA}'"
...

Cause

Ce problème est lié à la corrélation entre GlobalID et le GUID (Globally Unique Identifier). Les valeurs de GlobalID sont automatiquement générées lorsque des enregistrements sont ajoutés à la table. Ces valeurs sont stockées via une représentation de chaîne en majuscules. Cependant, lorsque le contenu d’exécution est publié, le GlobalID renvoyé est au format System.GUID et la méthode Guid.ToString stocke les valeurs en minuscules par défaut. Il s’agit d’une conception de Microsoft MSDN pour laquelle la valeur du GUID est représentée sous forme de série de nombres hexadécimaux en minuscules.

Ce comportement génère des conflits dans ArcMap dans le cas des colonnes GlobalID et GUID car les deux valeurs sont comparées au format chaîne, qui est sensible à la casse (par exemple, dans ArcMap, la valeur du GUID {EF2E0C18-638C-4C6D-AFA7-4D23581CCAA5} n’est pas identique à {ef2e0c18-638c-4c6d-afa7-4d23581ccaa5}).

Solution ou alternative

Utilisez l’une des solutions suggérées ci-dessous pour mener à bien la tâche queryFilter :

ID d’article: 000015294

Obtenez de l'aide avec l'IA

Résolvez rapidement votre problème avec le chatbot Esri Support AI.

Commencez à discuter maintenant

Informations associées

En savoir plus sur ce sujet

Obtenir de l’aide auprès des experts ArcGIS

Contacter le support technique

Commencez à discuter maintenant

Accéder aux options de téléchargement