Beispiel #1
0
        private System.Data.Entity.TransactionalBehavior GetTransactionalBehavior(Core.Cmn.TransactionalBehavior transactionalBehavior)
        {
            switch (transactionalBehavior)
            {
            case Core.Cmn.TransactionalBehavior.EnsureTransaction:
                return(System.Data.Entity.TransactionalBehavior.EnsureTransaction);

            case Core.Cmn.TransactionalBehavior.DoNotEnsureTransaction:
                return(System.Data.Entity.TransactionalBehavior.DoNotEnsureTransaction);

            default:
                return(System.Data.Entity.TransactionalBehavior.EnsureTransaction);
            }
        }
Beispiel #2
0
        //
        // Summary:
        //     Asynchronously executes the given DDL/DML command against the database. As with
        //     any API that accepts SQL it is important to parameterize any user input to protect
        //     against a SQL injection attack. You can include parameter place holders in the
        //     SQL query string and then supply parameter values as additional arguments. Any
        //     parameter values you supply will automatically be converted to a DbParameter.
        //     context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE
        //     Author = @p0", userSuppliedAuthor){throw new NotImplementedException();} Alternatively, you can also construct a DbParameter
        //     and supply it to SqlQuery. This allows you to use named parameters in the SQL
        //     query string. context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating
        //     = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor)){throw new NotImplementedException();}
        //
        // Parameters:
        //   transactionalBehavior:
        //     Controls the creation of a transaction for this command.
        //
        //   sql:
        //     The command string.
        //
        //   cancellationToken:
        //     A System.Threading.CancellationToken to observe while waiting for the task to
        //     complete.
        //
        //   parameters:
        //     The parameters to apply to the command string.
        //
        // Returns:
        //     A task that represents the asynchronous operation. The task result contains the
        //     result returned by the database after executing the command.
        //
        // Remarks:
        //     Multiple active operations on the same context instance are not supported. Use
        //     'await' to ensure that any asynchronous operations have completed before calling
        //     another method on this context.
        public Task <int> ExecuteSqlCommandAsync(Core.Cmn.TransactionalBehavior transactionalBehavior, string sql, CancellationToken cancellationToken, params object[] parameters)
        {
            var behavior = GetTransactionalBehavior(transactionalBehavior);

            return(_database.ExecuteSqlCommandAsync(behavior, sql, cancellationToken, parameters));
        }
Beispiel #3
0
        //
        // Summary:
        //     Executes the given DDL/DML command against the database. As with any API that
        //     accepts SQL it is important to parameterize any user input to protect against
        //     a SQL injection attack. You can include parameter place holders in the SQL query
        //     string and then supply parameter values as additional arguments. Any parameter
        //     values you supply will automatically be converted to a DbParameter. context.Database.ExecuteSqlCommand("UPDATE
        //     dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor){throw new NotImplementedException();} Alternatively,
        //     you can also construct a DbParameter and supply it to SqlQuery. This allows you
        //     to use named parameters in the SQL query string. context.Database.ExecuteSqlCommand("UPDATE
        //     dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author",
        //     userSuppliedAuthor)){throw new NotImplementedException();}
        //
        // Parameters:
        //   transactionalBehavior:
        //     Controls the creation of a transaction for this command.
        //
        //   sql:
        //     The command string.
        //
        //   parameters:
        //     The parameters to apply to the command string.
        //
        // Returns:
        //     The result returned by the database after executing the command.
        public int ExecuteSqlCommand(Core.Cmn.TransactionalBehavior transactionalBehavior, string sql, params object[] parameters)
        {
            var behavior = GetTransactionalBehavior(transactionalBehavior);

            return(_database.ExecuteSqlCommand(behavior, sql, parameters));
        }