private static async Task <bool> ExecuteDoesNameAlreadyExistsAsync(DroidName name, IDbConnection connection) { return(await connection.QueryFirstOrDefaultAsync <bool>( DroidStoredProcedures.DisplayDroidByName, new { name = (string)name }, commandType : CommandType.StoredProcedure)); }
public async Task <bool> DoesNameAlreadyExistsAsync(DroidName name) { using (var connection = _connectionProvider()) { return(await ExecuteDoesNameAlreadyExistsAsync(name, connection)); } }
private async Task <Droid> SetNameAsync(Func <DroidName, Task <bool> > nameAlreadyExistsAsync, DroidName name) { var existingDroidWithThisName = await nameAlreadyExistsAsync(name); if (existingDroidWithThisName) { throw new DroidConflictNameException(); } Name = name; return(this); }
public Task <bool> DoesNameAlreadyExistsAsync(DroidName name) { var doesNameAlreadyExists = _droids.Any(droid => droid.Name == name.Value); return(Task.FromResult(doesNameAlreadyExists)); }