/// <summary> /// Executes command asynchronously and returns number of affected records /// </summary> /// <param name="sql">Command text</param> /// <param name="dataParameters">Command parameters</param> /// <returns>Number of records, affected by command execution.</returns> public virtual async Task<int> ExecuteNonQueryAsync(string sql, params DataParameter[] dataParameters) { using var dataContext = await CreateDataConnectionAsync(); var command = new CommandInfo(dataContext, sql, dataParameters); var affectedRecords = await command.ExecuteAsync(); UpdateOutputParameters(dataContext, dataParameters); return affectedRecords; }
public async Task <IResult> ExecuteDefaultResponse(SocketCommandContext commandContext, int argumentPosition) { if (!commandContext.IsPrivate && commandContext.Channel.Name != GetBotChannel()) { return(ExecuteResult.FromSuccess()); } CommandInfo defaultCommand = innerService.Commands.FirstOrDefault(command => command.Attributes.Any(attribute => attribute is DefaultAttribute)); if (defaultCommand is default(CommandInfo)) { return(ExecuteResult.FromSuccess()); } return(await defaultCommand.ExecuteAsync(commandContext, Enumerable.Empty <object>(), Enumerable.Empty <object>(), services)); }
public async Task <int> ExecuteNonQueryAsync( string sql, int timeout, params DataParameter[] dataParameters) { using (var dataContext = new DataConnection( LinqToDbDataProvider, await CreateDbConnectionAsync(), GetMappingSchema()) { CommandTimeout = timeout }) { var command = new CommandInfo(dataContext, sql, dataParameters); var affectedRecords = await command.ExecuteAsync(); UpdateOutputParameters(dataContext, dataParameters); return(affectedRecords); } }