我正在使用Entity Framework 6.0。

我在SQL Server中将标量值函数签名为

fn_CartAmount(@CartId bigint) RETURNS decimal(18,2)


我想从实体框架调用此函数并获取其结果。

最佳答案

您可以尝试类似:

    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;
    }

关于c# - 如何使用 Entity Framework 调用和获取标量值函数的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36844046/

10-12 23:15