示例#1
0
        internal static Array ToParameterArrayValue <T>(this IDatabaseParameterHelper databaseParameterHelper, IEnumerable <T> collection)
        {
            if (databaseParameterHelper.DatabaseType == SupportedDatabaseTypes.Oracle)
            {
                if (typeof(T) == typeof(Guid))
                {
                    return(collection.Cast <Guid>().Select(databaseParameterHelper.WithGuidParameterValue).ToArray());
                }
            }

            return(collection.ToArray());
        }
示例#2
0
        public static string[] AddArrayParameter <T, TDynamicParameters>(this IDatabaseParameterHelper databaseParameterHelper, TDynamicParameters parameters, string paramName, IEnumerable <T> enumerable)
        {
            var array = databaseParameterHelper.ToParameterArrayValue(enumerable);

            if (databaseParameterHelper.DatabaseType != SupportedDatabaseTypes.Oracle)
            {
                var parameterNames = new List <string>();
                for (var i = 0; i < array.Length; i++)
                {
                    var parameterName = $"{paramName}{i}";
                    parameterNames.Add($"{databaseParameterHelper.GetParameterPrefix()}{parameterName}");
                    parameters.Add(parameterName, array.GetValue(i));
                }

                return(parameterNames.ToArray());
            }
            parameters.Add(paramName, array);

            return(new [] { $"{databaseParameterHelper.GetParameterPrefix()}{paramName}" });
        }
示例#3
0
 public static void AddArrayParameter <T>(this IDatabaseParameterHelper databaseParameterHelper, IDataParameterCollectionExt parameters, string paramName, IEnumerable <T> enumerable, ref string sql)
 {
     parameters.AddArrayParameter(paramName, enumerable, ref sql);
 }
示例#4
0
 public static string[] AddArrayParameter <T, TDynamicParameters>(this IDatabaseParameterHelper databaseParameterHelper, TDynamicParameters parameters, IEnumerable <T> enumerable)
 {
     return(AddArrayParameter(databaseParameterHelper, parameters, typeof(T).Name, enumerable));
 }
示例#5
0
 public static string GetParameterWithIdPostfix <T>(this IDatabaseParameterHelper @param, string postfix = "Id")
 {
     return(GetParameterWithIdPostfix <T>(postfix));
 }
 public DatabaseParameterResolver(
     IDbConfigSchemaTargets dbConfigConfig)
 {
     DbConfigConfig = dbConfigConfig;
     DatabaseParameterHelperField = new DatabaseParameterHelper(dbConfigConfig);
 }
 public DataParameterCollectionExt(IDatabaseParameterHelper dataParameterHelper)
 {
     DataParameterHelperField = dataParameterHelper;
     DynamicParameters        = new TDynamicParameters();
 }
 public DatabaseParameterResolver(
     IDbConfig dbConfig)
 {
     DbConfig = dbConfig;
     DatabaseParameterHelperField = new DatabaseParameterHelper(dbConfig);
 }