Jorge Bay created TINKERPOP-1837: ------------------------------------ Summary: Gremlin .NET: Provide type coercion between IDictionary<K, V> instances Key: TINKERPOP-1837 URL: https://issues.apache.org/jira/browse/TINKERPOP-1837 Project: TinkerPop Issue Type: Improvement Components: dotnet Affects Versions: 3.2.6, 3.3.0 Reporter: Jorge Bay Fix For: 3.2.7, 3.3.1
As [described on the mailing list|https://lists.apache.org/thread.html/368c4aa3b37ef9628a3af612aece93fe9ca1914e3b3393e7e2e9fbdd@%3Cdev.tinkerpop.apache.org%3E], the limitation for of the specification combined with the strictness of .NET generics, makes dealing with maps on the .NET GLV hard / impossible. All methods returning a map have this issue, as in the following example: {code} IDictionary<string, IList<int>> result = g.V().ValueMap<IList<int>>("age").Next(); {code} Causes an exception at runtime: {code} System.InvalidCastException: Unable to cast object of type 'System.Collections.Generic.Dictionary`2[System.Object,System.Object]' to type 'System.Collections.Generic.IDictionary`2[System.String,System.Collections.Generic.IList`2[System.Int32]]'. {code} We should provide conversion mechanism inside the default traversal. -- This message was sent by Atlassian JIRA (v6.4.14#64029)