Hey Chris-
That update completely fixed the problem, thank you very much.
One more issue, if I may:
When I hit
Code: Select all
public static void Load_end(FormOpenDental sender, long patNum) {
if (RemotingClient.RemotingRole == RemotingRole.ClientWeb) {
Meth.GetVoid(MethodBase.GetCurrentMethod(),sender,patNum);
return;
}
On my plugin's FormOpenDentalA, I get:
Code: Select all
Error Message: Self referencing loop detected for property 'Parent' with type 'System.Windows.Forms.MainMenu'. Path 'Obj.Menu.MenuItems[0]'.
Stack Trace:
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CheckForCircularReference(JsonWriter writer, Object value, JsonProperty property, JsonContract contract, JsonContainerContract containerContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.CalculatePropertyValues(JsonWriter writer, Object value, JsonContainerContract contract, JsonProperty member, JsonProperty property, JsonContract& memberContract, Object& memberValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject(JsonWriter writer, Object value, JsonObjectContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue(JsonWriter writer, Object value, JsonContract valueContract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerProperty)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType)
at Newtonsoft.Json.JsonConvert.SerializeObjectInternal(Object value, Type type, JsonSerializer jsonSerializer)
at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, JsonSerializerSettings settings)
at OpenDentBusiness.DtoObject.ConstructArray(MethodBase methodBase, Object[] objArray) in C:\Users\wjs\Desktop\ODVersions\opendental19.3\opendental19.3\OpenDentBusiness\Remoting\DtoObject.cs:line 217
at OpenDentBusiness.Meth.GetVoid(MethodBase methodBase, Object[] parameters) in C:\Users\wjs\Desktop\ODVersions\opendental19.3\opendental19.3\OpenDentBusiness\Remoting\Meth.cs:line 316
at Anesthesia.FormOpenDentalA.Load_end(FormOpenDental sender, Int64 patNum)
at Anesthesia.Plugin.HookAddCode(Object sender, String hookName, Object[] parameters)
at OpenDentBusiness.Plugins.HookAddCode(Object sender, String hookName, Object[] parameters) in C:\Users\wjs\Desktop\ODVersions\opendental19.3\opendental19.3\OpenDentBusiness\Plugins\Plugins.cs:line 175
I've tried to get Newtonsoft.Json to ignore the self referencing loops but no success so far.
Any insight?