External component exception on QueryRelatedAsync

4747
2
02-04-2015 05:53 AM
JuhoVainio
Occasional Contributor

I'm trying to query related records from an offline geodatabase (created by the Sync capability). Most of the relationshipqueries work out fine, but there's one that always throws an "External component exception". How should I proceed with this error?

External component has thrown an exception.
   at RuntimeCoreNet.CoreFieldDefinitionNativeMethods.CoreFieldDefinition_Create(IntPtr& ppNativeCoreFieldDefinition, String name, CoreFieldType type, Boolean isNullable, Int32 width)
   at RuntimeCoreNet.CoreFieldDefinition..ctor(String name, CoreFieldType type, Boolean isNullable, Int32 width)
   at Esri.ArcGISRuntime.Data.FieldInfo.ToCoreFieldDefinition()
   at Esri.ArcGISRuntime.Data.TableSchema..ctor(String name, IEnumerable`1 fields, String objectIDField, String creatorField, String creationTimeField, String editorField, String editorTimeField, Boolean hasAttachments, Boolean ignoreEditorFields)
   at Esri.ArcGISRuntime.Data.TableSchema..ctor(String name, IEnumerable`1 fields, String objectIDField, Boolean hasAttachments)
   at Esri.ArcGISRuntime.Data.ArcGISFeatureTable.QueryRelatedAsync(IEnumerable`1 featureIDs, Int64 relationshipID)

There's the stack trace after calling this QueryRelatedAsync:

Relationship relation = featureTable.ServiceInfo.Relationships.FirstOrDefault(c => c.RelatedTableID == relatedFeatureTable.ServiceInfo.ID);
var gdbFeatures = await featureTable.QueryRelatedAsync(objectId, relation.ID);

I've checked that the relation.ID matches the one on the ArcGIS Server and the server returns the (online) data correctly.

The featureTable in this case is the "child table" and the relatedFeatureTable is the "parent" table. Parent table contains a geometry and the child table does not. The QueryRelatedAsync works if the query is executed the other way (i.e. from parent to child). I've already tried switching the featureTables and relationIds but it doesn't make a difference.

Also it's worth noticing that the query works the other way around, from the parent to child (uses the same method).

The data is present in the SQLite database.

Any advice what should I try next?

0 Kudos
2 Replies
PaulLivingstone
New Contributor III

Did you ever get this resolved?

I am having the same error on all my related queries in my offline geodatabase both parent to child and visa versa.

I am using the 10.2.6 .net API.

Thanks

Paul

0 Kudos
JuhoVainio
Occasional Contributor

No I haven't, but the issue has been confirmed by ESRI and they have promised to fix this issue in the next runtime version (10.2.7).

0 Kudos