在项目开发中,Save的时候出现了这个异常,发现了问题是一个字段存储的问题,期间数据库字段使用的TEXT类型,EF的类型中使用的类型是CLOB,
在调试这个错误的时候,
_tripProduct.ProductDesc .Length
10423
tripProduct.ProductDesc.Length
7672
字段更新的少了 反而报错了求大神解惑,另外 这条数据映射modelBuilder.Entity<TripProduct>().Property<string>(x => x.ProductDesc).HasColumnName(@"ProductDesc").HasColumnType(@"text").ValueGeneratedNever().HasMaxLength(2147483647);
信息给的太少了,你保存的数据操作是怎样的?信息给详细点。
我SQLSERVER使用的是TEXT 类型,排除了数据库出错的可能,
EF也是使用的CLOB保存的数据,这么长时间搞下来,感觉不是我存储数据量的大小的问题。
就在昨天,我关注到了RPC协议流不正确这个问题。
Sqlserver默认的是 Chinese_PRC_CI_AS,而我的数据源是没有处理过的UTF-8的数据,
我估计在字符集转化的时候估计出现了错误,从而保存出错(也不知道什么原因,希望懂得人可以留言,学习学习);
考虑到格式问题,直接把数据源转化成了unicode,存储到数据库,用的时候在转化成UTF-8,而后没有出现这个错误了。
欸,会的还是太少了!
具体报错信息是什么?
– dudu 4年前传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 10 ("@p6"): 数据类型 0xA7 的数据长度或元数据长度无效。
– 美好的寄己 4年前