1
我正在从sql中的存储过程返回一个输出参数,例如FormNo。它返回成功,我检查过程,但在C#代码它不会返回任何东西。为什么不输出参数?
public static Boolean InsertAppliedWorks(int NITNo, int WorkNo, out int FormNo, int ContractorID, decimal FinancialMoney, int OfficeID, int OrgID)
{
Boolean status = false;
ClsDatabaseManager dbManager = ClsDatabaseManager.InitializeDbManager(Constants.Databases.TendersConnection);
try
{
FormNo = 0;
dbManager.Open();
dbManager.CreateParameters(7);
dbManager.AddParameters(0, "@NIT_No", NITNo);
dbManager.AddParameters(1, "@Work_No", WorkNo);
dbManager.AddParameters(2, "@FormNo", FormNo, ParameterDirection.Output);
dbManager.AddParameters(3, "@Contractor_ID", ContractorID);
dbManager.AddParameters(4, "@FinancialMoney", FinancialMoney);
dbManager.AddParameters(5, "@Organization_ID", OrgID);
dbManager.AddParameters(6, "@Office_ID", OfficeID);
status = dbManager.ExecuteNonQuery("InsertAppliedWorks").ToBool();
}
catch (Exception ex)
{
throw ex;
}
finally
{
dbManager.Close();
dbManager.Dispose();
}
return status;
}
代码:
protected void btnSavePrint_Click(object sender, EventArgs e)
{
try
{
ClsTender.InsertAppliedWorks(NitNo, WorkNo, out formno, ContractorID, Cost.ToDecimal(), bp.LoginMainOfficeID, bp.LoginOrganizationID);
int TestFormNo = formno;
Response.Redirect("/forms/general/TenderPrint.aspx?"+"NitNo="+SharedUtility.EncryptURL(NitNo.ToString())+"&WorkNo="+SharedUtility.EncryptURL(WorkNo.ToString()));
}
}
现在没有返回的FormNo
请帮助我在此。它浪费了大量的时间,仍然没有迹象,
错误不能转换字符串类型为bool – Cuckoo
@Cuckoo你的输出参数是'FormNo' ,你需要得到它的价值。检查编辑。 – user3185569