public async Task <IList <MassTime> > Find(MassTimeFilter filter) { var where = new StringBuilder("WHERE 1=1 "); where.Append(" AND ISNULL(@Church_id, Church_id) = Church_id"); where.Append(" AND ISNULL(@City_id, City_id) = City_id"); where.Append(" AND ISNULL(@WeekDay_id, WeekDay_id) = WeekDay_id"); where.Append(" AND ISNULL(@Neighborhood, Neighborhood) = Neighborhood"); where.Append(" AND ISNULL(@Time, [Time]) = [Time]"); return(await Execute(async() => { using (IDbConnection conn = Connection) { string sQuery = $"{BASE_QUERY} {where} {ORDERBY_QUERY}"; conn.Open(); var result = await conn.QueryAsync <MassTime>(sQuery, new { filter.Church_id, filter.City_id, filter.WeekDay_id, filter.Neighborhood, filter.Time }).ConfigureAwait(false); return result.ToList(); } }).ConfigureAwait(false)); }
public async Task Get_Return_Correct_ActionResult() { var filter = new MassTimeFilter(); var actual = await subject.Get(filter); massTimeServices.Verify(x => x.Find(filter), Times.Once); Assert.IsInstanceOf <ActionResult <IEnumerable <MassTime> > >(actual); }
public async Task <ActionResult <IEnumerable <MassTime> > > Get([FromQuery] MassTimeFilter filter) => Ok(await service.Find(filter).ConfigureAwait(false));