Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4J Readify客户端/驱动程序:无法反序列化对象_Neo4j_Neo4jclient - Fatal编程技术网

Neo4J Readify客户端/驱动程序:无法反序列化对象

Neo4J Readify客户端/驱动程序:无法反序列化对象,neo4j,neo4jclient,Neo4j,Neo4jclient,当我尝试通过运行以下方法获取结果集时,我收到一个错误/异常: public IEnumerable<NeoProduct> GetAllProductsUnderCategory(int categoryId) { var query = neo.Cypher.Match("(c:Category{CategoryId:{id}})<-[*](p:Product)") .WithParam("id", cate

当我尝试通过运行以下方法获取结果集时,我收到一个错误/异常:

public IEnumerable<NeoProduct> GetAllProductsUnderCategory(int categoryId)
                 {
             var query = neo.Cypher.Match("(c:Category{CategoryId:{id}})<-[*](p:Product)")
    .WithParam("id", categoryId)
    .Return(p => p.As<NeoProduct>()).Results;
            }
堆栈跟踪是:

   [OverflowException: Value was either too large or too small for an Int64.]
       System.Number.ParseInt64(String value, NumberStyles options, NumberFormatInfo numfmt) +14278344
       System.String.System.IConvertible.ToInt64(IFormatProvider provider) +55
       System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider) +14285879
       Neo4jClient.Serialization.CommonDeserializerMethods.CoerceValue(DeserializationContext context, PropertyInfo propertyInfo, JToken value, IEnumerable`1 typeMappings, Int32 nestingLevel) in D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.cs:101
       Neo4jClient.Serialization.CommonDeserializerMethods.Map(DeserializationContext context, Object targetObject, JToken parentJsonToken, IEnumerable`1 typeMappings, Int32 nestingLevel) in D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.cs:365
       Neo4jClient.Serialization.CommonDeserializerMethods.CreateAndMap(DeserializationContext context, Type type, JToken element, IEnumerable`1 typeMappings, Int32 nestingLevel) in D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.cs:303
       Neo4jClient.Serialization.<>c__DisplayClass17_0.<ParseInSingleColumnMode>b__1(JToken row) in D:\temp\tmpC806\Neo4jClient\Serialization\CypherJsonDeserializer.cs:437
       System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +223
       System.Linq.Buffer`1..ctor(IEnumerable`1 source) +264
       System.Linq.Enumerable.ToArray(IEnumerable`1 source) +106
       Neo4jClient.Serialization.CypherJsonDeserializer`1.Deserialize(String content) in D:\temp\tmpC806\Neo4jClient\Serialization\CypherJsonDeserializer.cs:64
   [ArgumentException: Neo4j returned a valid response, however Neo4jClient was unable to deserialize into the object structure you supplied.
[OverflowException:值对于Int64太大或太小。]
System.Number.ParseInt64(字符串值、NumberStyles选项、NumberFormatInfo numfmt)+14278344
System.String.System.IConvertible.ToInt64(IFormatProvider)+55
System.Convert.ChangeType(对象值、类型转换类型、IFormatProvider提供程序)+14285879
D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.CommonEvalue(反序列化上下文、PropertyInfo PropertyInfo、JToken值、IEnumerable`1类型映射、Int32嵌套级别)中的Neo4jClient.Serialization.CommonDeserializerMethods
D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.Map(反序列化上下文、对象targetObject、JToken parentJsonToken、IEnumerable`1类型映射、Int32嵌套级别)中的Neo4jClient.Serialization.CommonDeserializerMethods.Map
D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.CreateAndMap(反序列化上下文、类型类型类型、JToken元素、IEnumerable`1类型映射、Int32嵌套级别)中的Neo4jClient.Serialization.CommonDeserializerMethods.CreateAndMap
Neo4jClient.Serialization.c__在D:\temp\tmpC806\Neo4jClient\Serialization\cypherjsondesellizer.cs:437中显示Class17_0.b___1(JToken行)
System.Linq.whereSelectEnumerableInterator`2.MoveNext()+223
System.Linq.Buffer`1..ctor(IEnumerable`1源)+264
System.Linq.Enumerable.ToArray(IEnumerable`1源)+106
Neo4jClient.Serialization.CypherJsonDeserializer`1.在D:\temp\tmpC806\Neo4jClient\Serialization\CypherJsonDeserializer.cs:64中反序列化(字符串内容)
[ArgumentException:Neo4j返回了有效响应,但是Neo4jClient无法反序列化到您提供的对象结构中。
对于该方法,我将传递一个参数,该参数返回一个包含900个实体的结果集(结果来自Neo4J浏览器)。否则,该方法似乎可以正常工作


我怀疑JSON对象对于内部反序列化程序来说太大了。有人遇到过这个问题吗?

我发现了这个问题。数据库中有一个实体的一个非常长的数字大于int64,导致反序列化程序抛出异常(试图将一个大于int64的数字插入int64属性)


今天的课程:确保数据适合模型:)

我发现了问题。数据库中有一个实体的一个非常长的数字大于int64,导致反序列化程序引发异常(试图将一个大于int64的数字插入int64属性)


今天的课程:确保数据适合模型:)

您是否验证了JSON对象太大?如果返回一个产品会发生什么?它从来不是每次查看的JSON对象;数据库包含脏数据。:)我想可能是-异常消息通常不会撒谎!很高兴您解决了这个问题。您验证了JSON对象对象太大?如果返回一个产品会发生什么?它从来不是每次查看的JSON对象;数据库包含脏数据。:)我想可能是-异常消息通常不会说谎!很高兴您解决了这个问题。
   [OverflowException: Value was either too large or too small for an Int64.]
       System.Number.ParseInt64(String value, NumberStyles options, NumberFormatInfo numfmt) +14278344
       System.String.System.IConvertible.ToInt64(IFormatProvider provider) +55
       System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider) +14285879
       Neo4jClient.Serialization.CommonDeserializerMethods.CoerceValue(DeserializationContext context, PropertyInfo propertyInfo, JToken value, IEnumerable`1 typeMappings, Int32 nestingLevel) in D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.cs:101
       Neo4jClient.Serialization.CommonDeserializerMethods.Map(DeserializationContext context, Object targetObject, JToken parentJsonToken, IEnumerable`1 typeMappings, Int32 nestingLevel) in D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.cs:365
       Neo4jClient.Serialization.CommonDeserializerMethods.CreateAndMap(DeserializationContext context, Type type, JToken element, IEnumerable`1 typeMappings, Int32 nestingLevel) in D:\temp\tmpC806\Neo4jClient\Serialization\CommonDeserializerMethods.cs:303
       Neo4jClient.Serialization.<>c__DisplayClass17_0.<ParseInSingleColumnMode>b__1(JToken row) in D:\temp\tmpC806\Neo4jClient\Serialization\CypherJsonDeserializer.cs:437
       System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +223
       System.Linq.Buffer`1..ctor(IEnumerable`1 source) +264
       System.Linq.Enumerable.ToArray(IEnumerable`1 source) +106
       Neo4jClient.Serialization.CypherJsonDeserializer`1.Deserialize(String content) in D:\temp\tmpC806\Neo4jClient\Serialization\CypherJsonDeserializer.cs:64
   [ArgumentException: Neo4j returned a valid response, however Neo4jClient was unable to deserialize into the object structure you supplied.