示例#1
0
        /// <summary></summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="commandText"></param>
        /// <param name="commandType"></param>
        /// <param name="commandParameters"></param>
        /// <returns></returns>
        public async Task <ExecuteNonQueryResult <T> > ExecuteNonQuery <T>(
            string commandText,
            CommandType commandType,
            IEnumerable <IDataParameter> commandParameters)
        {
            ExecuteNonQueryResult <T> result = new ExecuteNonQueryResult <T>();

            using (var connection = await CreateAndOpenConnection(_connectionString))
            {
                using (var command = await CreateCommand(connection, commandText, commandType, commandParameters))
                {
                    result.CommandResult = command.ExecuteNonQuery();

                    return(await Task.Run(() =>
                    {
                        return result;
                    }));
                }
            }
        }
示例#2
0
        /// <summary>
        /// This will execute a query in the database.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="commandText">The command text.</param>
        /// <param name="commandType">Type of the command.</param>
        /// <param name="commandParameters">The command parameters.</param>
        /// <param name="outParamName">Output parameter name.</param>
        /// <param name="result">The result.</param>
        /// <returns></returns>
        public async Task <ExecuteNonQueryResult <T> > ExecuteNonQuery <T>(
            string commandText,
            CommandType commandType,
            IEnumerable <IDataParameter> commandParameters,
            string outParamName)
        {
            ExecuteNonQueryResult <T> result = new ExecuteNonQueryResult <T>();

            using (var connection = await CreateAndOpenConnection(_connectionString))
            {
                //connection.ReloadTypes();
                using (var command = await CreateCommand(connection, commandText, commandType, commandParameters))
                {
                    result.CommandResult = command.ExecuteNonQuery();
                    result.Output        = (T)command.Parameters[outParamName].Value;

                    return(await Task.Run(() =>
                    {
                        return result;
                    }));
                }
            }
        }