所以今天,我能够找到一条错误消息获取登录内部日志文件。我发现下面记录的错误。
Newtonsoft.Json.JsonSerializationException:将值{null}转换为键入'System.Decimal'时出错。 Path'Width',第1行,第99位。---> System.InvalidCastException:空对象不能转换为值类型。 at System.Convert.ChangeType(Object value,Type conversionType,IFormatProvider provider) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader,Object value,CultureInfo culture,JsonContract contract,Type targetType) --- End of内部异常堆栈跟踪--- at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader,Object value,CultureInfo culture,JsonContract contract,Type targetType) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader,Type JSONProperty成员,JsonContainerContract containerContract,JsonProperty容器成员,对象existingValue) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(J sonProperty属性,JsonConverter propertyConverter,JsonContainerContract containerContract,JsonProperty containerProperty,JsonReader阅读器,对象目标) 在Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(对象NEWOBJECT,JsonReader读卡器,JsonObjectContract合同,JsonProperty构件,字符串ID)
这是我的一个小数属性(宽度),这是可选的,不需要报告。使用下面的代码将属性更改为接受null。
decimal?
更改后,它解决了其中一个实体的验证错误。我会检查其他项目是否有相同的问题。