public ObjectGraphType <TEntity> Build <TEntity>() where TEntity : class
        {
            var entityMapper = MapperProvider.GetEntityMapper <TEntity>();

            var entityGraphTypeFactory = LambdaExpressionCache.GetLambdaExpression <Func <ObjectGraphType <TEntity> > >(
                $"{GetEntityGraphTypeName<TEntity>()}_Factory",
                (key) => BuildEntityGraphTypeFactory <TEntity>(entityMapper.Properties.ToArray()));

            return(entityGraphTypeFactory.Compile().Invoke());
        }
Exemple #2
0
        public QueryArgument Build <TEntity>() where TEntity : class
        {
            var entityMapper = MapperProvider.GetEntityMapper <TEntity>();

            var entityOrderByGraphTypeFactory = LambdaExpressionCache.GetLambdaExpression <Func <InputObjectGraphType> >(
                $"{GetEntityOrderByTypeName<TEntity>()}_Factory",
                (key) => BuildEntityOrderByGraphTypeFactory <TEntity>(entityMapper.Properties.ToArray()));

            var entityOrderByType = entityOrderByGraphTypeFactory.Compile().Invoke();

            return(new QueryArgument(new ListGraphType(new NonNullGraphType(entityOrderByType)))
            {
                Name = EntityGraphQueryConstants.GraphQueryArgumnet_OrderBy
            });
        }