مشکل در بازگرداندن پارامترهای خروجی SqlCommand
سلام . من يه Sp دارم به صورت زير :
ALTER Procedure [dbo].[m_FlightClasses_Fill]
@TotalRecords int output
As
Begin
Select * From FlightClasses
select @TotalRecords = count(*) from FlightClasses
End
حالا من می خوام مقدار متغير @TotalRecords رو بدست بيارم اين کار رو کردم :
SqlParameter prmTotalRecords = new SqlParameter("@TotalRecords" , DbType.Int32 );
prmTotalRecords.Value = 0;
prmTotalRecords.Direction = ParameterDirection.Output;
cmd.Parameters.Add(prmTotalRecords);
dr = cmd.ExecuteReader(CommandBehavior.CloseConnection) ;
totalRecords = Convert.ToInt32(cmd.Parameters["@TotalRecords"].Value);
ولی هميشه مقدار
cmd.Parameters["@TotalRecords"].Value
null هست . نمی دونم چرا ؟
نقل قول: مشکل در بازگرداندن پارامترهای خروجی SqlCommand
با سلام
اگر میخواهید ابتدا مقداردهی پیش فرض کنید میتونید Direction را InputOutput بگیرید که مقدار دهی اولیه هم کرده باشید .
میتونید هم prmTotalRecords.Value = 0 را حذف کنید و توی SP بنویسید :
@TotalRecords int output=0
انشالله که حل بشه . خدانگهدار