コード例 #1
0
        private async Task ExecuteDeleteSqlAsync(DbConnection connection)
        {
            using (var tx = connection.BeginTransaction())
                using (var cmd = connection.CreateCommand())
                {
                    cmd.CommandTimeout = CommandTimeout ?? cmd.CommandTimeout;
                    cmd.Transaction    = tx;
                    if (DbAdapter == Respawn.DbAdapter.Jet)
                    {
                        foreach (var statement in DeleteSql.Remove(DeleteSql.Length - 6).Split(new string[] { ";##;" }, StringSplitOptions.None))
                        {
                            cmd.CommandText = statement;
                            await cmd.ExecuteNonQueryAsync();
                        }
                    }
                    else
                    {
                        cmd.CommandText = DeleteSql;
                        await cmd.ExecuteNonQueryAsync();

                        if (ReseedSql != null)
                        {
                            cmd.CommandText = ReseedSql;
                            await cmd.ExecuteNonQueryAsync();
                        }
                    }
                    tx.Commit();
                }
        }
コード例 #2
0
        public IObservable <int> Delete(Int64 id)
        {
            var param = "@id".ToParam(DbType.Int64, id);

            var cmd = DeleteSql.ToCmd(CommandType.Text, param);

            return(Db.ExecuteNonQuery(cmd));
        }