0
저장 프로 시저의 출력 매개 변수를 세션 변수에 할당하려고합니다. 기본적으로 varchar 출력 매개 변수가있는 저장 프로 시저를 호출하려고합니다. 저장 프로 시저출력 매개 변수로 varchar를 사용하여 저장 프로 시저 호출
Alter proc spCheckTaskPerformed
@TaskId int,
@Email varchar(100),
@Status varchar(100) output
as
begin
Select @Status = Status from tblTaskPerformed
where [Email] = @Email and [TaskId][email protected]
end
I는 다음과 같습니다 가지고있는 코드 : 다음과 같다
private void CheckTaskPerformed()
{
string CS = ConfigurationManager.ConnectionStrings["EasyRozMoney_ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(CS))
{
con.Open();
SqlCommand cmd = new SqlCommand("spCheckTaskPerformed", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@TaskId", lblTaskId.Text);
cmd.Parameters.AddWithValue("@Email", Session["Email"].ToString());
SqlParameter outputParameter = new SqlParameter();
outputParameter.ParameterName = "@Status";
outputParameter.SqlDbType = System.Data.SqlDbType.VarChar;
outputParameter.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(outputParameter);
cmd.ExecuteNonQuery();
string Status = outputParameter.Value.ToString();
lblStatus.Text = "This task has " + Status;
}
}
하지만 난 오류 메시지 - 문자열 [2] : 크기 속성에 0의 잘못된 크기가 아래 라인.
cmd.ExecuteNonQuery();
예, 당신은 또한 C#을 측면에'100'에'Size' 속성을 설정해야합니다. –
outputParameter.Size = 100; –