Skip to content

Commit 4c02542

Browse files
committed
Fix
1 parent 5db88cc commit 4c02542

48 files changed

Lines changed: 212 additions & 280 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/Linq2GraphQL.Client/QueryNode.cs

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class QueryNode
1414

1515
public QueryNode(MemberInfo member, string name = null, List<ArgumentValue> arguments = null, bool interfaceProperty = false, bool topLevel = false)
1616
{
17-
Name = name ?? member.GetCustomAttribute<JsonPropertyNameAttribute>()?.Name ?? member.Name.ToCamelCase();
17+
Name = name ?? member.GetCustomAttribute<GraphQLMemberAttribute>()?.GraphQLName ?? member.Name.ToCamelCase();
1818
Member = member;
1919
Arguments = arguments ?? new List<ArgumentValue>();
2020
underlyingMemberType = member.GetUnderlyingType();
@@ -130,23 +130,27 @@ public void AddPrimitiveChildren(bool recursive, GraphQLSchema schema)
130130
var typeOrListType = underlyingMemberType.GetTypeOrListType();
131131
foreach (var propertyInfo in typeOrListType.GetProperties(BindingFlags.Public | BindingFlags.Instance))
132132
{
133-
if (propertyInfo.GetCustomAttribute<GraphShadowPropertyAttribute>() != null)
133+
134+
135+
136+
if (!propertyInfo.PropertyType.IsValueTypeOrString())
134137
{
135138
continue;
136139
}
137140

138-
if (!propertyInfo.PropertyType.IsValueTypeOrString() || propertyInfo.GetCustomAttribute<GraphShadowPropertyAttribute>() != null)
141+
142+
var memberAttribute = propertyInfo.GetCustomAttribute<GraphQLMemberAttribute>();
143+
if (memberAttribute == null)
139144
{
140145
continue;
141146
}
142147

148+
143149
if (schema != null)
144150
{
145-
var name = propertyInfo.GetCustomAttribute<JsonPropertyNameAttribute>()?.Name ??
146-
Member.Name.ToCamelCase();
147-
if (schema.TypePropertyExists(typeOrListType.Name, name))
151+
if (schema.TypePropertyExists(typeOrListType.Name, memberAttribute.GraphQLName))
148152
{
149-
AddChildNode(propertyInfo, name);
153+
AddChildNode(propertyInfo, memberAttribute.GraphQLName);
150154
}
151155
else
152156
{

src/Linq2GraphQL.Generator/Templates/Class/ClassTemplate.cs

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -281,57 +281,49 @@ public virtual string TransformText()
281281

282282
#line default
283283
#line hidden
284-
this.Write(" [JsonPropertyName(\"");
284+
this.Write(" [GraphQLMember(\"");
285285

286286
#line 54 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
287287
this.Write(this.ToStringHelper.ToStringWithCulture(field.Name));
288288

289-
#line default
290-
#line hidden
291-
this.Write("\")]\r\n [GraphQLMember(\"");
292-
293-
#line 55 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
294-
this.Write(this.ToStringHelper.ToStringWithCulture(field.Name));
295-
296289
#line default
297290
#line hidden
298291
this.Write("\")]\r\n public ");
299292

300-
#line 56 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
293+
#line 55 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
301294
this.Write(this.ToStringHelper.ToStringWithCulture(GetFieldCSharpName(field)));
302295

303296
#line default
304297
#line hidden
305298
this.Write(" ");
306299

307-
#line 56 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
300+
#line 55 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
308301
this.Write(this.ToStringHelper.ToStringWithCulture(field.CSharpName));
309302

310303
#line default
311304
#line hidden
312305
this.Write(" { get; set; }\r\n\r\n");
313306

314-
#line 58 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
307+
#line 57 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
315308
}
316309

317310
#line default
318311
#line hidden
319312

320-
#line 59 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
313+
#line 58 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
321314
}
322315

323316
#line default
324317
#line hidden
325318

326-
#line 60 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
319+
#line 59 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
327320
if (classType.HasInterfaces) {
328321

329322
#line default
330323
#line hidden
331-
this.Write(" [JsonPropertyName(\"__typename\")]\r\n public string __TypeName { get; set; }\r" +
332-
"\n");
324+
this.Write(" [GraphQLMember(\"__typename\")]\r\n public string __TypeName { get; set; }\r\n");
333325

334-
#line 63 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
326+
#line 62 "C:\Code\Github\Linq2GraphQL.Client\src\Linq2GraphQL.Generator\Templates\Class\ClassTemplate.tt"
335327
}
336328

337329
#line default

src/Linq2GraphQL.Generator/Templates/Class/ClassTemplate.tt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,13 @@ public partial class <#= classType.Name #> <#= classType.GetInterfacesString("Gr
5151
/// <#= field.Description #>
5252
/// </summary>
5353
<# } #>
54-
[JsonPropertyName("<#= field.Name #>")]
5554
[GraphQLMember("<#= field.Name #>")]
5655
public <#= GetFieldCSharpName(field) #> <#= field.CSharpName #> { get; set; }
5756

5857
<# } #>
5958
<# } #>
6059
<# if (classType.HasInterfaces) { #>
61-
[JsonPropertyName("__typename")]
60+
[GraphQLMember("__typename")]
6261
public string __TypeName { get; set; }
6362
<# } #>
6463
}

test/Linq2GraphQL.TestClient/Generated/Inputs/AddressFilterInput.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,35 +15,35 @@ namespace Linq2GraphQL.TestClient;
1515
[JsonConverter(typeof(GraphInputConverter<AddressFilterInput>))]
1616
public partial class AddressFilterInput : GraphInputBase
1717
{
18-
[JsonPropertyName("and")]
18+
[GraphQLMember("and")]
1919
public List<AddressFilterInput> And
2020
{
2121
get => GetValue<List<AddressFilterInput>>("and");
2222
set => SetValue("and", value);
2323
}
2424

25-
[JsonPropertyName("or")]
25+
[GraphQLMember("or")]
2626
public List<AddressFilterInput> Or
2727
{
2828
get => GetValue<List<AddressFilterInput>>("or");
2929
set => SetValue("or", value);
3030
}
3131

32-
[JsonPropertyName("name")]
32+
[GraphQLMember("name")]
3333
public StringOperationFilterInput Name
3434
{
3535
get => GetValue<StringOperationFilterInput>("name");
3636
set => SetValue("name", value);
3737
}
3838

39-
[JsonPropertyName("street")]
39+
[GraphQLMember("street")]
4040
public StringOperationFilterInput Street
4141
{
4242
get => GetValue<StringOperationFilterInput>("street");
4343
set => SetValue("street", value);
4444
}
4545

46-
[JsonPropertyName("postalCode")]
46+
[GraphQLMember("postalCode")]
4747
public StringOperationFilterInput PostalCode
4848
{
4949
get => GetValue<StringOperationFilterInput>("postalCode");

test/Linq2GraphQL.TestClient/Generated/Inputs/AddressInput.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,21 @@ namespace Linq2GraphQL.TestClient;
1515
[JsonConverter(typeof(GraphInputConverter<AddressInput>))]
1616
public partial class AddressInput : GraphInputBase
1717
{
18-
[JsonPropertyName("name")]
18+
[GraphQLMember("name")]
1919
public string Name
2020
{
2121
get => GetValue<string>("name");
2222
set => SetValue("name", value);
2323
}
2424

25-
[JsonPropertyName("street")]
25+
[GraphQLMember("street")]
2626
public string Street
2727
{
2828
get => GetValue<string>("street");
2929
set => SetValue("street", value);
3030
}
3131

32-
[JsonPropertyName("postalCode")]
32+
[GraphQLMember("postalCode")]
3333
public string PostalCode
3434
{
3535
get => GetValue<string>("postalCode");

test/Linq2GraphQL.TestClient/Generated/Inputs/AddressSortInput.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,21 @@ namespace Linq2GraphQL.TestClient;
1515
[JsonConverter(typeof(GraphInputConverter<AddressSortInput>))]
1616
public partial class AddressSortInput : GraphInputBase
1717
{
18-
[JsonPropertyName("name")]
18+
[GraphQLMember("name")]
1919
public SortEnumType? Name
2020
{
2121
get => GetValue<SortEnumType?>("name");
2222
set => SetValue("name", value);
2323
}
2424

25-
[JsonPropertyName("street")]
25+
[GraphQLMember("street")]
2626
public SortEnumType? Street
2727
{
2828
get => GetValue<SortEnumType?>("street");
2929
set => SetValue("street", value);
3030
}
3131

32-
[JsonPropertyName("postalCode")]
32+
[GraphQLMember("postalCode")]
3333
public SortEnumType? PostalCode
3434
{
3535
get => GetValue<SortEnumType?>("postalCode");

test/Linq2GraphQL.TestClient/Generated/Inputs/ByteOperationFilterInput.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,84 +15,84 @@ namespace Linq2GraphQL.TestClient;
1515
[JsonConverter(typeof(GraphInputConverter<ByteOperationFilterInput>))]
1616
public partial class ByteOperationFilterInput : GraphInputBase
1717
{
18-
[JsonPropertyName("eq")]
18+
[GraphQLMember("eq")]
1919
public byte? Eq
2020
{
2121
get => GetValue<byte?>("eq");
2222
set => SetValue("eq", value);
2323
}
2424

25-
[JsonPropertyName("neq")]
25+
[GraphQLMember("neq")]
2626
public byte? Neq
2727
{
2828
get => GetValue<byte?>("neq");
2929
set => SetValue("neq", value);
3030
}
3131

32-
[JsonPropertyName("in")]
32+
[GraphQLMember("in")]
3333
public List<byte?> In
3434
{
3535
get => GetValue<List<byte?>>("in");
3636
set => SetValue("in", value);
3737
}
3838

39-
[JsonPropertyName("nin")]
39+
[GraphQLMember("nin")]
4040
public List<byte?> Nin
4141
{
4242
get => GetValue<List<byte?>>("nin");
4343
set => SetValue("nin", value);
4444
}
4545

46-
[JsonPropertyName("gt")]
46+
[GraphQLMember("gt")]
4747
public byte? Gt
4848
{
4949
get => GetValue<byte?>("gt");
5050
set => SetValue("gt", value);
5151
}
5252

53-
[JsonPropertyName("ngt")]
53+
[GraphQLMember("ngt")]
5454
public byte? Ngt
5555
{
5656
get => GetValue<byte?>("ngt");
5757
set => SetValue("ngt", value);
5858
}
5959

60-
[JsonPropertyName("gte")]
60+
[GraphQLMember("gte")]
6161
public byte? Gte
6262
{
6363
get => GetValue<byte?>("gte");
6464
set => SetValue("gte", value);
6565
}
6666

67-
[JsonPropertyName("ngte")]
67+
[GraphQLMember("ngte")]
6868
public byte? Ngte
6969
{
7070
get => GetValue<byte?>("ngte");
7171
set => SetValue("ngte", value);
7272
}
7373

74-
[JsonPropertyName("lt")]
74+
[GraphQLMember("lt")]
7575
public byte? Lt
7676
{
7777
get => GetValue<byte?>("lt");
7878
set => SetValue("lt", value);
7979
}
8080

81-
[JsonPropertyName("nlt")]
81+
[GraphQLMember("nlt")]
8282
public byte? Nlt
8383
{
8484
get => GetValue<byte?>("nlt");
8585
set => SetValue("nlt", value);
8686
}
8787

88-
[JsonPropertyName("lte")]
88+
[GraphQLMember("lte")]
8989
public byte? Lte
9090
{
9191
get => GetValue<byte?>("lte");
9292
set => SetValue("lte", value);
9393
}
9494

95-
[JsonPropertyName("nlte")]
95+
[GraphQLMember("nlte")]
9696
public byte? Nlte
9797
{
9898
get => GetValue<byte?>("nlte");

test/Linq2GraphQL.TestClient/Generated/Inputs/CustomerFilterInput.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,49 +15,49 @@ namespace Linq2GraphQL.TestClient;
1515
[JsonConverter(typeof(GraphInputConverter<CustomerFilterInput>))]
1616
public partial class CustomerFilterInput : GraphInputBase
1717
{
18-
[JsonPropertyName("and")]
18+
[GraphQLMember("and")]
1919
public List<CustomerFilterInput> And
2020
{
2121
get => GetValue<List<CustomerFilterInput>>("and");
2222
set => SetValue("and", value);
2323
}
2424

25-
[JsonPropertyName("or")]
25+
[GraphQLMember("or")]
2626
public List<CustomerFilterInput> Or
2727
{
2828
get => GetValue<List<CustomerFilterInput>>("or");
2929
set => SetValue("or", value);
3030
}
3131

32-
[JsonPropertyName("customerId")]
32+
[GraphQLMember("customerId")]
3333
public UuidOperationFilterInput CustomerId
3434
{
3535
get => GetValue<UuidOperationFilterInput>("customerId");
3636
set => SetValue("customerId", value);
3737
}
3838

39-
[JsonPropertyName("customerName")]
39+
[GraphQLMember("customerName")]
4040
public StringOperationFilterInput CustomerName
4141
{
4242
get => GetValue<StringOperationFilterInput>("customerName");
4343
set => SetValue("customerName", value);
4444
}
4545

46-
[JsonPropertyName("status")]
46+
[GraphQLMember("status")]
4747
public CustomerStatusOperationFilterInput Status
4848
{
4949
get => GetValue<CustomerStatusOperationFilterInput>("status");
5050
set => SetValue("status", value);
5151
}
5252

53-
[JsonPropertyName("orders")]
53+
[GraphQLMember("orders")]
5454
public ListFilterInputTypeOfOrderFilterInput Orders
5555
{
5656
get => GetValue<ListFilterInputTypeOfOrderFilterInput>("orders");
5757
set => SetValue("orders", value);
5858
}
5959

60-
[JsonPropertyName("address")]
60+
[GraphQLMember("address")]
6161
public AddressFilterInput Address
6262
{
6363
get => GetValue<AddressFilterInput>("address");

0 commit comments

Comments
 (0)