@@ -9,10 +9,11 @@ public FieldBuilder<object, TReturn> AddSingleField<TReturn>(
99 Func < ResolveEfFieldContext < TDbContext , object > , IQueryable < TReturn > > resolve ,
1010 Func < ResolveEfFieldContext < TDbContext , object > , TReturn , Task > ? mutate = null ,
1111 Type ? graphType = null ,
12- bool nullable = false )
12+ bool nullable = false ,
13+ bool omitQueryArguments = false )
1314 where TReturn : class
1415 {
15- var field = BuildSingleField ( name , resolve , mutate , graphType , nullable ) ;
16+ var field = BuildSingleField ( name , resolve , mutate , graphType , nullable , omitQueryArguments ) ;
1617 graph . AddField ( field ) ;
1718 return new FieldBuilderEx < object , TReturn > ( field ) ;
1819 }
@@ -23,10 +24,11 @@ public FieldBuilder<object, TReturn> AddSingleField<TReturn>(
2324 Func < ResolveEfFieldContext < TDbContext , object > , IQueryable < TReturn > > resolve ,
2425 Func < ResolveEfFieldContext < TDbContext , object > , TReturn , Task > ? mutate = null ,
2526 Type ? graphType = null ,
26- bool nullable = false )
27+ bool nullable = false ,
28+ bool omitQueryArguments = false )
2729 where TReturn : class
2830 {
29- var field = BuildSingleField ( name , resolve , mutate , graphType , nullable ) ;
31+ var field = BuildSingleField ( name , resolve , mutate , graphType , nullable , omitQueryArguments ) ;
3032 graph . AddField ( field ) ;
3133 return new FieldBuilderEx < object , TReturn > ( field ) ;
3234 }
@@ -37,10 +39,11 @@ public FieldBuilder<TSource, TReturn> AddSingleField<TSource, TReturn>(
3739 Func < ResolveEfFieldContext < TDbContext , TSource > , IQueryable < TReturn > > resolve ,
3840 Func < ResolveEfFieldContext < TDbContext , TSource > , TReturn , Task > ? mutate = null ,
3941 Type ? graphType = null ,
40- bool nullable = false )
42+ bool nullable = false ,
43+ bool omitQueryArguments = false )
4144 where TReturn : class
4245 {
43- var field = BuildSingleField ( name , resolve , mutate , graphType , nullable ) ;
46+ var field = BuildSingleField ( name , resolve , mutate , graphType , nullable , omitQueryArguments ) ;
4447 graph . AddField ( field ) ;
4548 return new FieldBuilderEx < TSource , TReturn > ( field ) ;
4649 }
@@ -50,19 +53,19 @@ FieldType BuildSingleField<TSource, TReturn>(
5053 Func < ResolveEfFieldContext < TDbContext , TSource > , IQueryable < TReturn > > resolve ,
5154 Func < ResolveEfFieldContext < TDbContext , TSource > , TReturn , Task > ? mutate ,
5255 Type ? graphType ,
53- bool nullable )
56+ bool nullable ,
57+ bool omitQueryArguments )
5458 where TReturn : class
5559 {
5660 Guard . AgainstWhiteSpace ( nameof ( name ) , name ) ;
5761
5862 graphType ??= GraphTypeFinder . FindGraphType < TReturn > ( nullable ) ;
5963
6064 var hasId = keyNames . ContainsKey ( typeof ( TReturn ) ) ;
61- return new ( )
65+ var type = new FieldType
6266 {
6367 Name = name ,
6468 Type = graphType ,
65- Arguments = ArgumentAppender . GetQueryArguments ( hasId , false ) ,
6669 Resolver = new FuncFieldResolver < TSource , TReturn ? > (
6770 async context =>
6871 {
@@ -77,7 +80,10 @@ FieldType BuildSingleField<TSource, TReturn>(
7780 }
7881
7982 query = includeAppender . AddIncludes ( query , context ) ;
80- query = query . ApplyGraphQlArguments ( context , names , false ) ;
83+ if ( ! omitQueryArguments )
84+ {
85+ query = query . ApplyGraphQlArguments ( context , names , false ) ;
86+ }
8187
8288 QueryLogger . Write ( query ) ;
8389
@@ -112,5 +118,10 @@ FieldType BuildSingleField<TSource, TReturn>(
112118 throw new ExecutionError ( "Not found" ) ;
113119 } )
114120 } ;
121+ if ( ! omitQueryArguments )
122+ {
123+ type . Arguments = ArgumentAppender . GetQueryArguments ( hasId , false ) ;
124+ }
125+ return type ;
115126 }
116127}
0 commit comments