Ejemplo n.º 1
0
        public RoomMutation(RoomRepository roomRepository, NumeroRepository numeroRepository)
        {
            Field <RoomType>("createRoom",
                             arguments: new QueryArguments(new QueryArgument <NonNullGraphType <RoomInputType> > {
                Name = "input"
            }),
                             resolve: context => {
                return(roomRepository.Add(context.GetArgument <Room>("input")));
            });

            Field <RoomType>("deleteRoom",
                             arguments: new QueryArguments(new QueryArgument <NonNullGraphType <IdGraphType> > {
                Name = "id"
            }),
                             resolve: context => {
                return(roomRepository.Remove(context.GetArgument <long>("id")));
            });


            Field <NumeroType>("createNumero",
                               arguments: new QueryArguments(new QueryArgument <NonNullGraphType <NumeroInputType> > {
                Name = "input"
            }),
                               resolve: context => {
                return(numeroRepository.Add(context.GetArgument <Numero>("input")));
            });

            Field <NumeroType>("deleteNumero",
                               arguments: new QueryArguments(new QueryArgument <NonNullGraphType <IdGraphType> > {
                Name = "id"
            }),
                               resolve: context => {
                return(numeroRepository.Remove(context.GetArgument <long>("id")));
            });
            Field <CardboardType>("createCardboard",
                                  resolve: context => {
                return(roomRepository.AddCardboard());
            }
                                  );
        }
Ejemplo n.º 2
0
        public RoomQuery(RoomRepository roomRepository, AdminRepository adminRepository, NumeroRepository numeroRepository)
        {
            Field <ListGraphType <RoomType> >("rooms",
                                              arguments: new QueryArguments(new QueryArgument <StringGraphType> {
                Name = "name"
            }),
                                              resolve: context =>
            {
                return(roomRepository.All(context));
            });

            Field <ListGraphType <AdminType> >("admin",
                                               arguments: new QueryArguments(
                                                   new QueryArgument <StringGraphType> {
                Name = "email"
            },
                                                   new QueryArgument <StringGraphType> {
                Name = "password"
            }),
                                               resolve: context =>
            {
                return(adminRepository.All(context));
            });

            Field <ListGraphType <NumeroType> >("numero",
                                                arguments: new QueryArguments(
                                                    new QueryArgument <IntGraphType> {
                Name = "num"
            }),
                                                resolve: context =>
            {
                return(numeroRepository.All(context));
            });

            Field <ListGraphType <NumeroType> >("numeros",
                                                arguments: new QueryArguments(
                                                    new QueryArgument <IntGraphType> {
                Name = "num"
            }
                                                    ),
                                                resolve: context => {
                return(numeroRepository.All(context));
            });

            Field <CardboardType>("cardboard",
                                  arguments: new QueryArguments(
                                      new QueryArgument <IntGraphType> {
                Name = "id"
            }),
                                  resolve: context =>
            {
                return(roomRepository.FindCardboard(context.GetArgument <long>("id")));
            });
        }