转:传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确 .

时间:2023-06-18 20:51:32

近期在做淘宝客的项目,大家都知道,淘宝的商品详细描述字符长度很大,所以就导致了今天出现了一个问题

VS的报错是这样子的  ” 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确“ 还说某个@desricption 过长之类的话

直觉告诉我,某个字段过长溢出了

第一时间  :看看字段的数据类型 ,该字段类型为text,也就是无限制的长度,所以,数据库是没有问题的

第二 时间 :看看三层,代码生成器自动生成的代码如下这段

  1. db.AddInParameter(dbCommand, "@Description", DbType.AnsiString, model.Description);
  db.AddInParameter(dbCommand, "@Description", DbType.AnsiString, model.Description);

那这个DbType.AnsiString究竟是什么类型呢?光标点中它,按F1,打开MSDN在线帮助,问题就出现在这里,DbType.AnsiString 限制字符长度为1~8000个字符,而淘宝商品的详细介绍远远比这多!所以,我使用了另外一个参数类型

  1. db.AddInParameter(dbCommand, "@Description", DbType.String, model.Description);
db.AddInParameter(dbCommand, "@Description", DbType.String, model.Description);

保存编译,测试通过!

转:传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确 .

MSDN在线文档:DbType 枚举

原创:http://blog.csdn.net/wayne20018891/article/details/7399974