Hi Guys,
I am loading mapx file into CIMMapDocument object by using below code snippet,
In some document I got the error message "Value was either too large or too small for an Int32."
I added the stacktrace for detail as well. Can you guys suggest how to solve it? @Wolf
Prosdk version is 2.7,
string mapxJson = File.ReadAllText(mapxFilePath);
bool success = await QueuedTask.Run(() =>
{
try
{
CIMMapDocument mapDoc = CIMMapDocument.FromJson(mapxJson);
if (mapDoc.LayerDefinitions != null && mapDoc.LayerDefinitions.Length > 0)
{
this.SourceDocument = mapDoc;
return true;
}
}catch(Exception ex)
{
System.Diagnostics.Trace.WriteLine(ex.Message + "\r\n" + ex.StackTrace);
return false;
}
return false;
});
StackTrace is
at System.Convert.ToInt32(Int64 value)
at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
at Newtonsoft.Json.Linq.Extensions.Convert[T,U](T token)
at ArcGIS.Core.CIM.JsonUtils.GetObjectForPropertySetOrArray(JToken jToken, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JsonUtils.TrySetDictionaryMember(JObject jObject, String memberName, Dictionary`2& dictionaryMember, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.CIMBasicFeatureTemplate.Deserialize(JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JsonUtils.DeserializeCIMObject(JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JsonUtils.DeserializeCIMObject[T](JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JObjectExtensions.TryGetCIMObjectArrayMember[T](JObject jObject, String memberName, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.CIMBasicFeatureLayer.Deserialize(JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.CIMGeoFeatureLayerBase.Deserialize(JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JsonUtils.DeserializeCIMObject(JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JsonUtils.DeserializeCIMObject[T](JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JObjectExtensions.TryGetCIMObjectArrayMember[T](JObject jObject, String memberName, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.CIMMapDocument.Deserialize(JObject jObject, JsonDeserializationSettings settings)
at ArcGIS.Core.CIM.JsonUtils.FromJson[T](String json, JsonDeserializationSettings settings)
at Tools.UI.DockpaneSetDataSourceViewModel.<>c__DisplayClass168_0.<GetMapxDataSourceInfo>b__0() in
\protoolset\tools\dockpanesetdatasourceviewmodel.cs