当前位置: 代码迷 >> ASP.NET >> 关于用MakeParam接收存储过程的return值,该怎么解决
  详细解决方案

关于用MakeParam接收存储过程的return值,该怎么解决

热度:1996   发布时间:2013-02-25 00:00:00.0
关于用MakeParam接收存储过程的return值
在存储过程中除了有入参、出参外,还会通过return语句返回,请问在C#中,如何用Database.MakeParam接收存储过程返回的return值呢??我想用这个return值在页面做一个判断~! 请各位帮下忙~! 本人菜鸟,希望解答尽量详细。。多谢~!

------解决方案--------------------------------------------------------
--CREATE PROCEDURE [dbo].[Test_FilteredPasswordCheckIsNoExists]
--(@FilteredPasswordName Nvarchar(500),
--@ReturnValue int output)
--AS
-- Begin
--
-- if Exists(select FID from [FilteredPassword] where FWord =@FilteredPasswordName And CurState>-4)
-- set @ReturnValue=1
-- else
-- set @ReturnValue=0
-- End
--
--GO

Code

internal static bool CheckFilteredPasswordYesNoExists(string FilteredPasswordName)
{
bool result = false;
SqlParameter[] p ={ SqlHelper.MakeInParam("@FilteredPasswordName", SqlDbType.NVarChar, 500, FilteredPasswordName), ReTurnValue };
try
{
NonQueryBool("Test_FilteredPasswordCheckIsNoExists", p);
result = Convert.ToInt32(p[1].Value) == 1 ? true : false;
}
catch { return false; } return result;
}

 internal protected static SqlParameter ReTurnValue
{
get
{
return Test.Common.Framework.Data.SqlHelper.MakeOutParam("@ReTurnValue", SqlDbType.Int, 4);
}
}
  相关解决方案