C# 调用存储过程出错:String[3]: Size 属性具有无效大小值 0

  存储过程如下

1 Create PROCEDURE [dbo].[Test]
2     @FundId int,
3     @vchStrategyToken nvarchar(20),
4     @ErrorMessage nvarchar(500) output
5 AS
6 GO

  在项目当中,调用存储过程的时候,出现了String[3]: Size 属性具有无效大小值 0的错误,如图所示:

  最终发现原因是给SqlCommand对象添加查询参数时没有指定参数大小,只要加上就可以了:

1 cmd.Parameters.Add(new SqlParameter("@FundId", SqlDbType.Int));
2 cmd.Parameters.Add(new SqlParameter("@vchStrategyToken", SqlDbType.NVarChar));
3 cmd.Parameters.Add(new SqlParameter("@ErrorMessage", SqlDbType.NVarChar, 500));

PS:如有疑问,请留言,未经允许不得私自转载,转载请注明出处:http://www.cnblogs.com/xuliangxing/p/7344455.html

原文地址:https://www.cnblogs.com/xuliangxing/p/7344455.html