我在SQL Server中定义了一个函数(带字符串和int)如何用ADO.NET调用它?
(如果它与调用存储过程100%相同,请说明,因为有很多关于调用存储过程的例子)
答案 0 :(得分:26)
唯一的区别是您必须为返回值添加特殊参数
请参阅:MySqlCommand call function
using (var connection = new SqlConnection("ConnectionString"))
using (var command = connection.CreateCommand())
{
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "MyFunction";
SqlParameter returnValue = command.Parameters.Add("@RETURN_VALUE", SqlDbType.Int);
returnValue.Direction = ParameterDirection.ReturnValue;
connection.Open();
command.ExecuteNonQuery();
return returnValue.Value;
}