Example #1
0
 public ServiceType(LdmcoreContext dbContext)
 {
     Field(x => x.ServiceId).Description("The Id of the service.");
     Field(x => x.Name).Description("Name of the service.");
     Field <ListGraphType <OrderType> >(
         "Orders",
         resolve: context =>
     {
         var serviceId = context.Source.ServiceId;
         return(dbContext.Orders.Where(x => x.ServiceId == serviceId));
     }
         );
 }
Example #2
0
 public LoginType(LdmcoreContext dbContext)
 {
     Field(x => x.LoginId).Description("The Id of the login.");
     Field(x => x.Name).Description("Name of the user.");
     Field <ListGraphType <OrderType> >(
         "Orders",
         resolve: context =>
     {
         var loginId = context.Source.LoginId;
         return(dbContext.Orders.Where(x => x.LoginId == loginId));
     }
         );
 }
Example #3
0
 public OrderType(LdmcoreContext dbContext)
 {
     Field(x => x.Id).Description("The Id of the Order.");
     Field(x => x.LoginId).Description("Login Id of the user.");
     Field(x => x.ServiceId).Description("Service Id of the service.");
     Field <ServiceType>("Service", "Service object for order", null,
                         resolve: context =>
     {
         var serviceId = context.Source.ServiceId;
         return(dbContext.Services.Find(serviceId));
     });
     Field <LoginType>("OrderedBy", "Login object for order", null,
                       resolve: context =>
     {
         var loginId = context.Source.LoginId;
         return(dbContext.Logins.Find(loginId));
     });
 }
Example #4
0
        public LdmcoreQuery(LdmcoreContext dbContext)
        {
            Field <LoginType>(
                "Login",
                arguments: new QueryArguments(new QueryArgument <IdGraphType> {
                Name = "id"
            }),
                resolve: context =>
            {
                var id = context.GetArgument <int>("id");
                return(dbContext.Logins.FirstOrDefault(x => x.LoginId == id));
            }
                );

            Field <OrderType>(
                "Order",
                arguments: new QueryArguments(new QueryArgument <IdGraphType> {
                Name = "id"
            }),
                resolve: context =>
            {
                var id = context.GetArgument <int>("id");
                //var includeFields = context.ParentType.Fields.Where(x => x.Name != context.FieldName);
                //dbContext.Orders.Include(x => x.)
                var order = dbContext.Orders.Include("service").Include("OrderedBy").FirstOrDefault(x => x.Id == id);
                return(order);
            }
                );


            Field <ListGraphType <OrderType> >(
                "Orders",
                arguments: new QueryArguments(new QueryArgument <IdGraphType> {
                Name = "id"
            }),
                resolve: context =>
            {
                var id = context.GetArgument <int?>("id");
                if (id.HasValue)
                {
                    var order = dbContext.Orders.FirstOrDefault(x => x.Id == id);
                    return(new List <Order>()
                    {
                        order
                    });
                }

                return(dbContext.Orders);
            }
                );

            Field <ServiceType>(
                "Service",
                arguments: new QueryArguments(new QueryArgument <IdGraphType> {
                Name = "id"
            }),
                resolve: context =>
            {
                var id = context.GetArgument <int>("id");

                // TODO:: Find the proper way to do this

                return(dbContext.Services.Find(id));
            }
                );
        }
 public ValuesController(LdmcoreContext dbContext, IDocumentExecuter documentExecuter, ISchema schema)
 {
     _dbContext        = dbContext;
     _schema           = schema;
     _documentExecuter = documentExecuter;
 }