首页 新闻 会员 周边

.NET CORE EF存储数据时数据类型 0xA7 的数据长度或元数据长度无效。

0
悬赏园豆:200 [待解决问题]

在项目开发中,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);

EF
美好的寄己的主页 美好的寄己 | 初学一级 | 园豆:6
提问于:2020-03-14 12:49

具体报错信息是什么?

dudu 4年前

传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 10 ("@p6"): 数据类型 0xA7 的数据长度或元数据长度无效。

美好的寄己 4年前
< >
分享
所有回答(2)
0

信息给的太少了,你保存的数据操作是怎样的?信息给详细点。

Jeffcky | 园豆:2789 (老鸟四级) | 2020-03-14 23:24
0

我SQLSERVER使用的是TEXT 类型,排除了数据库出错的可能,
EF也是使用的CLOB保存的数据,这么长时间搞下来,感觉不是我存储数据量的大小的问题。
就在昨天,我关注到了RPC协议流不正确这个问题。
Sqlserver默认的是 Chinese_PRC_CI_AS,而我的数据源是没有处理过的UTF-8的数据,
我估计在字符集转化的时候估计出现了错误,从而保存出错(也不知道什么原因,希望懂得人可以留言,学习学习);
考虑到格式问题,直接把数据源转化成了unicode,存储到数据库,用的时候在转化成UTF-8,而后没有出现这个错误了。
欸,会的还是太少了!

美好的寄己 | 园豆:6 (初学一级) | 2020-03-18 12:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册