我在社交网络上工作,我的一个程序返回一个VARCHAR输出。 所以这就是我写的:
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar);
job1.Direction = ParameterDirection.Output;
但是出现了这个错误:
String [1]:Size属性的大小无效。
答案 0 :(得分:57)
指定varchar
参数时,您需要定义长度:
SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar, 50);
您应该使用SQL Server存储过程中定义的相同长度。
顺便说一句:如果您的存储过程也没有定义长度(类似@job VARCHAR OUTPUT
) - 那么您已经定义了一个1个字符长度的varchar
字符串......
答案 1 :(得分:1)
是的,必须定义[0]
[1]
[2]
/ varchar
数据类型的长度,如下所示。
nvarchar
答案 2 :(得分:0)