无法将输出参数传递给存储过程 [英] unable to pass output parameter to store procedure
问题描述
public int CompanyRegister(CompanyRegistration Cr,out int CompanyID)
{
// int NewCompanyID = 0;
DataTable dt = new DataTable();
试试
{
SqlParameter NewCompanyID = new SqlParameter(" @CompID", SqlDbType.Int);
NewCompanyID.Direction = ParameterDirection.Output;
// NewCompanyID = Convert.ToInt32(OutNonloanChargeBalance.Value);
SqlParameter [] param = {
新的SqlParameter(@ CompName,Cr.CompanyName),
新的SqlParameter(@ LogoPath,Cr.companylog),
新的SqlParameter(@ TypeofBusiness,Cr.Typeofbusiness),
dt = sh.ExecuteDataTable(" dbo.Insert_ALOrganization",param);
CompanyID = Convert.ToInt32(NewCompanyID.Value);
}
catch(Exception ex)
{
抛出ex;
}
返回CompanyID;
}
}
这里我将通过所有这些价值,我会在varibla中得到oup,即:CompanyID
public int CompanyRegister(CompanyRegistration Cr, out int CompanyID)
{
//int NewCompanyID = 0;
DataTable dt = new DataTable();
try
{
SqlParameter NewCompanyID = new SqlParameter("@CompID", SqlDbType.Int);
NewCompanyID.Direction = ParameterDirection.Output;
//NewCompanyID = Convert.ToInt32(OutNonloanChargeBalance.Value);
SqlParameter[] param ={
new SqlParameter(@CompName,Cr.CompanyName),
new SqlParameter(@LogoPath,Cr.companylog),
new SqlParameter(@TypeofBusiness,Cr.Typeofbusiness),
dt = sh.ExecuteDataTable("dbo.Insert_ALOrganization", param);
CompanyID = Convert.ToInt32(NewCompanyID.Value);
}
catch (Exception ex)
{
throw ex;
}
return CompanyID;
}
}
here i willpass allthese value and i will get oup put in the varibla ie:CompanyID
推荐答案
您没有在SqlParameter数组参数中包含NewCompanyID参数。
You are not including your NewCompanyID parameter in SqlParameter array param.
public int CompanyRegister(CompanyRegistration Cr)
{
int CompanyID=0;
DataTable dt = new DataTable();
try
{
SqlParameter NewCompanyID = new SqlParameter("@CompID", SqlDbType.Int);
NewCompanyID.Direction = ParameterDirection.Output;
SqlParameter[] param = { NewCompanyID ,
new SqlParameter(@CompName,Cr.CompanyName),
new SqlParameter(@LogoPath,Cr.companylog),
new SqlParameter(@TypeofBusiness,Cr.Typeofbusiness)
}
dt = sh.ExecuteDataTable("dbo.Insert_ALOrganization", param);
CompanyID = Convert.ToInt32(NewCompanyID.Value);
}
catch (Exception ex)
{
throw ex;
}
return CompanyID;
}
这篇关于无法将输出参数传递给存储过程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!