public ProductionQuery(IBikeStoreRepository bikeStoreRepository) { Field <ListGraphType <BrandType> >( "brands", arguments: new QueryArguments( new QueryArgument <IntGraphType> { Name = "brandId" }), resolve: context => { var brandId = context.GetArgument <int?>("brandId"); if (brandId.HasValue) { return(Task.WhenAll(bikeStoreRepository.GetBrand(brandId.Value))); } return(bikeStoreRepository.GetBrands()); }); Field <ListGraphType <ProductType> >( "products", arguments: new QueryArguments( new QueryArgument <NonNullGraphType <IntGraphType> > { Name = "page" }, new QueryArgument <NonNullGraphType <IntGraphType> > { Name = "itemsPerPage" }), resolve: context => { var page = context.GetArgument <int>("page"); var itemsPerPage = context.GetArgument <int>("itemsPerPage"); return(bikeStoreRepository.GetProducts(page, itemsPerPage)); }); }
public SalesQuery(IBikeStoreRepository bikeStoreRepository) { Field <ListGraphType <StaffType> >( "staff", resolve: context => { return(bikeStoreRepository.GetStaff()); }); Field <ListGraphType <StoreType> >( "stores", resolve: context => { return(bikeStoreRepository.GetStores()); }); }
public StaffType(IDataLoaderContextAccessor accessor, IBikeStoreRepository bikeStoreRepository) { Field(t => t.Active); Field(t => t.Email); Field(t => t.FirstName); Field(t => t.LastName); Field(t => t.ManagerId, nullable: true); Field(t => t.Phone); Field(t => t.StaffId); Field <StoreType, Store>() .Name("store") .ResolveAsync(context => { var loader = accessor.Context.GetOrAddBatchLoader <int, Store>( "StoreTypeLoader", async storeIds => { var stores = await bikeStoreRepository.GetStores(); return(stores.ToDictionary(s => s.Id, s => s)); }); return(loader.LoadAsync(context.Source.StoreId)); }); }
public HomeController(IBikeStoreRepository db) { _db = db; }
public SalesController(IBikeStoreRepository bikeStoreRepository, ILogger <SalesController> logger) { _bikeStoreRepository = bikeStoreRepository; _logger = logger; }
public ProductionController(IBikeStoreRepository bikeStoreRepository, ILogger <ProductionController> logger) { _bikeStoreRepository = bikeStoreRepository; _logger = logger; }