2011-12-25 45 views
15

私はソーシャルネットワークで作業しています。私の手続きの1つでは、VARCHAR出力を返します。 これは私が書いたものである:Sizeプロパティのサイズが無効です0

SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar); 
job1.Direction = ParameterDirection.Output; 

ただし、このエラーがアップします:

文字列[1]:Sizeプロパティは、あなたが必要とする0

+1

+1スナップ - まったく同じ例外です! – whytheq

答えて

32

の無効なサイズがあります

SqlParameter job1 = cmd2.Parameters.Add("@job", SqlDbType.VarChar, 50); 
varcharパラメータを指定するとき に長を定義

SQL Serverストアドプロシージャで定義されているのと同じ長さを使用する必要があります。

そして、ところで:あなたのストアドプロシージャも何の長さが定義された(@job VARCHAR OUTPUTのようなもの)を持っていない場合 - あなたは1つの文字長のvarchar文字列を定義した......

+0

ありがとう、それは働いた:) – RuMoR

+1

+1(ちょうど私の最長の質問を作成し、このQAにリダイレクトされました!) – whytheq

0

はい、定義する必要があります長さはvarchar/nvarchar以下のようになります。

cmd.Parameters.Add("@Description", SqlDbType.VarChar, 150).Direction = 
    ParameterDirection.Output; 
関連する問題