Example #1
0
        public async Task <List <GarageDto> > GetGarageByUser(int userId)
        {
            List <GarageDto> garageList = new List <GarageDto>();
            SqlDataReader    reader     = null;

            using (SqlCommand oCommand = await base.GetCommandAsync())
            {
                try
                {
                    oCommand.CommandType = CommandType.Text;
                    oCommand.CommandText = @"select * From garages g inner join [guardameLugarDB].[dbo].localidades l on g.localidad_garage = l.localidad_id 
											where garage_id in (select garage_id from garage_por_usuario where user_id = @user_id) order by l.nombre_localidad;"                                            ;

                    oCommand.AddParameter("user_id", DbType.Int32, userId);

                    IAsyncResult asyncResult = ExecuteAsync(oCommand, "GetGarageByUser");
                    reader = oCommand.EndExecuteReader(asyncResult);

                    while (await reader.ReadAsync())
                    {
                        garageList.Add(ModelBuilderHelper.BuildGaragesData(reader));
                    }
                    return(garageList);
                }
                catch (Exception ex)
                {
                    _logger.LogError(ex, GetType().Name + "." + MethodBase.GetCurrentMethod().Name);
                    throw new AggregateException(_classFullName + ".GetGarageByUser(int userId)", ex);
                }
                finally
                {
                    if (reader != null && !reader.IsClosed)
                    {
                        reader.Close();
                    }
                    if (!TransactionOpened())
                    {
                        base.CloseCommand();
                    }
                }
            }
        }
Example #2
0
        public async Task <GarageDto> GetGarageById(int garageId)
        {
            GarageDto     garageDto = null;
            SqlDataReader reader    = null;

            using (SqlCommand oCommand = await base.GetCommandAsync())
            {
                try
                {
                    oCommand.CommandType = CommandType.Text;
                    oCommand.CommandText = @"SELECT * FROM garages g inner join [guardameLugarDB].[dbo].localidades l on g.localidad_garage = l.localidad_id where garage_id = @garage_id order by l.nombre_localidad ;";

                    oCommand.AddParameter("garage_id", DbType.Int32, garageId);

                    IAsyncResult asyncResult = ExecuteAsync(oCommand, "GetGarageById");
                    reader = oCommand.EndExecuteReader(asyncResult);

                    while (await reader.ReadAsync())
                    {
                        garageDto = ModelBuilderHelper.BuildGaragesData(reader);
                    }
                    return(garageDto);
                }
                catch (Exception ex)
                {
                    _logger.LogError(ex, GetType().Name + "." + MethodBase.GetCurrentMethod().Name);
                    throw new AggregateException(_classFullName + ".Localidades()", ex);
                }
                finally
                {
                    if (reader != null && !reader.IsClosed)
                    {
                        reader.Close();
                    }
                    if (!TransactionOpened())
                    {
                        base.CloseCommand();
                    }
                }
            }
        }
Example #3
0
        public async Task <List <GarageDto> > GetGarages(string query)
        {
            List <GarageDto> garageList = new List <GarageDto>();
            SqlDataReader    reader     = null;

            using (SqlCommand oCommand = await base.GetCommandAsync())
            {
                try
                {
                    oCommand.CommandType = CommandType.Text;
                    oCommand.CommandText = query;

                    IAsyncResult asyncResult = ExecuteAsync(oCommand, "GetGarages");
                    reader = oCommand.EndExecuteReader(asyncResult);

                    while (await reader.ReadAsync())
                    {
                        garageList.Add(ModelBuilderHelper.BuildGaragesData(reader));
                    }
                    return(garageList);
                }
                catch (Exception ex)
                {
                    _logger.LogError(ex, GetType().Name + "." + MethodBase.GetCurrentMethod().Name);
                    throw new AggregateException(_classFullName + ".GetGarages(string query)", ex);
                }
                finally
                {
                    if (reader != null && !reader.IsClosed)
                    {
                        reader.Close();
                    }
                    if (!TransactionOpened())
                    {
                        base.CloseCommand();
                    }
                }
            }
        }