Exemple #1
0
        public static void Delete <T>(IDictionary <string, object> conditionalEntities)
        {
            using (var con = GetSqlConnection())
            {
                string tableName = typeof(T).Name;

                DbCommands.Execute(
                    con,
                    SqlBuilder.BuildDeleteCommand(tableName, conditionalEntities.Keys),
                    conditionalEntities);
            }
        }
Exemple #2
0
        public static void Insert <T>(T entity, string[] excludeEntityNames = null)
        {
            using (var con = GetSqlConnection())
            {
                GetProperties(entity, out string tableName, out IDictionary <string, object> properties);

                DbCommands.Execute(
                    con,
                    SqlBuilder.BuildInsertCommand(tableName, properties.Keys, excludeEntityNames),
                    properties);
            }
        }
Exemple #3
0
        public static void Update <T>(T entity, IDictionary <string, object> conditionalEntities, string[] excludeEntityNames = null)
        {
            using (var con = GetSqlConnection())
            {
                GetProperties(entity, out string tableName, out IDictionary <string, object> properties);

                var mergeProperties = properties;

                foreach (var conditionalEntity in conditionalEntities)
                {
                    mergeProperties.Add("c_" + conditionalEntity.Key, conditionalEntity.Value);
                }

                DbCommands.Execute(
                    con,
                    SqlBuilder.BuildUpdateCommand(tableName, properties.Keys, conditionalEntities.Keys, excludeEntityNames),
                    mergeProperties);
            }
        }