I am using Entity Framework 6.0.
I am having scalar valued function in SQL Server signatured as
fn_CartAmount(@CartId bigint) RETURNS decimal(18,2)
I want to call this function from Entity Framework and get its result.
You could try something like :
public decimal GetCartAmount(int cartId)
{
var returnCode = new SqlParameter("@ReturnCode", SqlDbType.Bit) { Direction = ParameterDirection.Output };
object[] parameters =
{
new SqlParameter(@"CartId", SqlDbType.BigInt) {Value = cartId}
, returnCode
};
string command = string.Format("exec @ReturnCode = dbo.fn_CartAmount @CartId");
Database.ExecuteSqlCommand(command, parameters);
return (decimal)returnCode.Value;
}