예제 #1
0
        public static string GetDeleteSql(this IDeleteProperties deleteProperties, int id = 0, string tableIndex = null, List <List <object> > listsIn = null, string sqlAppend = "")
        {
            string        result    = string.Empty;
            StringBuilder builder   = new StringBuilder();
            var           tableName = deleteProperties.GetTableName(tableIndex);

            builder.AppendLine(string.Format("Delete From {0} ", tableName));
            var matchedKeys = deleteProperties.GetInMatchedKeyNameAndValues(id, false, listsIn?.ToArray());

            builder.AppendJoin(" ", matchedKeys);
            builder.Append(sqlAppend);
            result = builder.ToString();
            return(result);
        }
예제 #2
0
 public static bool DeletePropertiesByKey(this IDeleteProperties deleteProperties, int id = 0, string tableIndex = null, List <List <object> > listsIn = null, string sqlAppend = "")
 {
     try
     {
         if (deleteProperties == null)
         {
             return(false);
         }
         using (IDbConnection dbConnection = deleteProperties.GetDBConnection(id))
         {
             dbConnection.Open();
             var sql    = deleteProperties.GetDeleteSql(id, tableIndex, listsIn);
             var result = dbConnection.Execute(sql, deleteProperties) > 0;
             if (!result)
             {
                 throw new Exception("没有匹配的记录");
             }
             return(result);
         }
     }
     catch (Exception ex)
     { throw ex; }
 }