Thank you for creating this extension, looks fabulous.
I am having some issues with uploading code for seemingly random customizations. After some digging I think it has to do with the Newtonsoft.Json.JsonConvert.DeserializeObject
calls located in EpicorTWControl.xaml.cs when it’s parsing the CustomizationInfo.json file. In my particular case the Version field is a value of 6479548074, and the VSExtension.CustomizationClass.Version field is an Int32.
Attaching the debugger shows the following:
Exception thrown: 'Newtonsoft.Json.JsonReaderException' in Newtonsoft.Json.dll
An unhandled exception of type 'Newtonsoft.Json.JsonReaderException' occurred in Newtonsoft.Json.dll
JSON integer 6479548074 is too large or small for an Int32. Path 'Version', line 1, position 934.
It’s a bit obfuscated in the Event Viewer though, showing as this:
Application: devenv.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: Newtonsoft.Json.JsonReaderException
at Newtonsoft.Json.JsonTextReader.ParseReadNumber(Newtonsoft.Json.ReadType, Char, Int32)
at Newtonsoft.Json.JsonTextReader.ParseNumber(Newtonsoft.Json.ReadType)
at Newtonsoft.Json.JsonTextReader.ReadNumberValue(Newtonsoft.Json.ReadType)
at Newtonsoft.Json.JsonTextReader.ReadAsInt32()
at Newtonsoft.Json.JsonReader.ReadForType(Newtonsoft.Json.Serialization.JsonContract, Boolean)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(System.Object, Newtonsoft.Json.JsonReader, Newtonsoft.Json.Serialization.JsonObjectContract, Newtonsoft.Json.Serialization.JsonProperty, System.String)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(Newtonsoft.Json.JsonReader, System.Type, Newtonsoft.Json.Serialization.JsonContract, Newtonsoft.Json.Serialization.JsonProperty, Newtonsoft.Json.Serialization.JsonContainerContract, Newtonsoft.Json.Serialization.JsonProperty, System.Object)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(Newtonsoft.Json.JsonReader, System.Type, Newtonsoft.Json.Serialization.JsonContract, Newtonsoft.Json.Serialization.JsonProperty, Newtonsoft.Json.Serialization.JsonContainerContract, Newtonsoft.Json.Serialization.JsonProperty, System.Object)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(Newtonsoft.Json.JsonReader, System.Type, Boolean)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(Newtonsoft.Json.JsonReader, System.Type)
at Newtonsoft.Json.JsonConvert.DeserializeObject(System.String, System.Type, Newtonsoft.Json.JsonSerializerSettings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.String, Newtonsoft.Json.JsonSerializerSettings)
at VSExtension.EpicorTWControl.<BtnUpdate_Click>b__18_0()
I apologize for not just submitting a pull request but I can’t quite seem to get the epicor-editor-helper project to build on my computer.