Exemple #1
0
        private IComparable GetValue(ParameterMarkerExpressionSegment expressionSegment, ParameterContext parameterContext)
        {
            object result = parameterContext.GetParameterValue(expressionSegment.GetParameterName());

            ShardingAssert.Else(result is IComparable, "Sharding value must implements IComparable.");
            return((IComparable)result);
        }
        public static object GetParameterValue(this List <object> parameters, ParameterMarkerExpressionSegment parameterMarkerExpressionSegment)
        {
            var parameter = parameters.Select(o => (DbParameter)o).FirstOrDefault(o => o.ParameterName.Equals(parameterMarkerExpressionSegment.GetParameterName()));

            ShardingAssert.ShouldBeNotNull(parameter, $"Sharding value cant find parameter name :[{parameterMarkerExpressionSegment.GetParameterName()}].");
            return(parameter.Value);
        }