Skip to content

Commit

Permalink
Update samples and tests for .NET 8 (#1107)
Browse files Browse the repository at this point in the history
  • Loading branch information
Shane32 committed Jan 12, 2024
1 parent 7e34ea3 commit 9f2bf46
Show file tree
Hide file tree
Showing 42 changed files with 76 additions and 76 deletions.
5 changes: 2 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,10 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Setup .NET SDK
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
6.0.x
7.0.x
8.0.x
source-url: https://nuget.pkg.github.com/graphql-dotnet/index.json
env:
NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ jobs:
- name: Checkout source
uses: actions/checkout@v4
- name: Setup .NET SDK
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v4
with:
dotnet-version: 7.0.x
dotnet-version: 8.0.x
source-url: https://nuget.pkg.github.com/graphql-dotnet/index.json
env:
NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,10 @@ jobs:
echo version=$version
echo "version=$version" >> $GITHUB_ENV
- name: Setup .NET SDK
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
6.0.x
7.0.x
8.0.x
source-url: https://api.nuget.org/v3/index.json
env:
NUGET_AUTH_TOKEN: ${{secrets.NUGET_AUTH_TOKEN}}
Expand All @@ -43,7 +42,7 @@ jobs:
- name: Pack solution [Release]
run: dotnet pack --no-restore --no-build -c Release -p:Version=$version -o out
- name: Upload Nuget packages as workflow artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: Nuget packages
path: |
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,14 +41,15 @@ jobs:
- name: Checkout source
uses: actions/checkout@v4
- name: Setup .NET SDK
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
2.1.x
3.1.x
5.0.x
6.0.x
7.0.x
8.0.x
source-url: https://nuget.pkg.github.com/graphql-dotnet/index.json
env:
NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
Expand Down
13 changes: 8 additions & 5 deletions Tests.props
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

<PropertyGroup>
<SingleTestPlatform Condition="'$(SingleTestPlatform)' == ''">false</SingleTestPlatform>
<NoWarn>$(NoWarn);CS1591;CS1998;IDE0017;IDE0053;CA1707;CA1816;CA1822;CA1825;CA1835;CA1852;CA2201</NoWarn>
<NoWarn>$(NoWarn);CS1591;CS1998;IDE0017;IDE0053;CA1707;CA1816;CA1822;CA1825;CA1835;CA1852;CA2201;CA1861</NoWarn>
<IsPackable>false</IsPackable>
</PropertyGroup>

Expand All @@ -13,22 +13,25 @@
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.3.3" Condition="'$(TargetFramework)' == 'netcoreapp2.1'" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.1" Condition="'$(TargetFramework)' != 'netcoreapp2.1'" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" Condition="'$(TargetFramework)' != 'netcoreapp2.1'" />
<PackageReference Include="Shouldly" Version="4.2.1" />
<PackageReference Include="xunit" Version="2.5.0" />
<PackageReference Include="xunit" Version="2.6.5" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3" Condition="'$(TargetFramework)' == 'netcoreapp2.1'" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5" Condition="'$(TargetFramework)' != 'netcoreapp2.1'" />
<PackageReference Include="Moq" Version="4.20.69" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5" Condition="'$(TargetFramework)' == 'netcoreapp3.1' OR '$(TargetFramework)' == 'net5.0'" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.6" Condition="'$(TargetFramework)' != 'netcoreapp2.1' AND '$(TargetFramework)' != 'netcoreapp3.1' AND '$(TargetFramework)' != 'net5.0'" />
<PackageReference Include="Moq" Version="4.20.70" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="2.1.*" Condition="'$(TargetFramework)' == 'netcoreapp2.1' OR '$(TargetFramework)' == 'net48'" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="3.1.*" Condition="'$(TargetFramework)' == 'netcoreapp3.1'" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="5.0.*" Condition="'$(TargetFramework)' == 'net5.0'" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="6.0.*" Condition="'$(TargetFramework)' == 'net6.0'" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="7.0.*" Condition="'$(TargetFramework)' == 'net7.0'" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.*" Condition="'$(TargetFramework)' == 'net8.0'" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="2.1.*" Condition="'$(TargetFramework)' == 'netcoreapp2.1' OR '$(TargetFramework)' == 'net48'" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="3.1.*" Condition="'$(TargetFramework)' == 'netcoreapp3.1'" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.*" Condition="'$(TargetFramework)' == 'net5.0'" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.*" Condition="'$(TargetFramework)' == 'net6.0'" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.*" Condition="'$(TargetFramework)' == 'net7.0'" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="8.0.*" Condition="'$(TargetFramework)' == 'net8.0'" />
</ItemGroup>

<ItemGroup>
Expand Down
12 changes: 6 additions & 6 deletions samples/Samples.Authorization/Samples.Authorization.csproj
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk.Web">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="7.0.*" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="7.0.*" />
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" Version="7.0.*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.*">
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="8.0.*" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="8.0.*" />
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" Version="8.0.*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.*">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
Expand Down
2 changes: 1 addition & 1 deletion samples/Samples.Basic/Samples.Basic.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion samples/Samples.Complex/Samples.Complex.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk.Web">

<PropertyGroup>
<TargetFrameworks>net7;net6;net5;netcoreapp3.1</TargetFrameworks>
<TargetFrameworks>net8;net6;netcoreapp3.1</TargetFrameworks>
<AssemblyName>GraphQL.Samples.Server</AssemblyName>
<RootNamespace>GraphQL.Samples.Server</RootNamespace>
<IsPackable>false</IsPackable>
Expand Down
2 changes: 1 addition & 1 deletion samples/Samples.Controller/Samples.Controller.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion samples/Samples.Cors/Samples.Cors.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
4 changes: 2 additions & 2 deletions samples/Samples.Jwt/Samples.Jwt.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.10" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="8.0.*" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<WarningsNotAsErrors>CS8618</WarningsNotAsErrors>
</PropertyGroup>

Expand Down
2 changes: 1 addition & 1 deletion samples/Samples.Pages/Samples.Pages.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
<TargetFrameworks>netstandard2.0;netcoreapp2.1;netcoreapp3.1;net5.0</TargetFrameworks>
<Description>Integration of GraphQL.NET validation subsystem into ASP.NET Core</Description>
<PackageTags>GraphQL;authentication;authorization;validation</PackageTags>
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/Authorization.AspNetCore/AuthorizationVisitor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ namespace GraphQL.Server.Authorization.AspNetCore;
public partial class AuthorizationValidationRule
{
/// <inheritdoc/>
[Obsolete("This class has been replaced by GraphQL.Server.Transports.AspNetCore.AuthorizationValidationRule.AuthorizationVisitor and will be removed in v8.")]
[Obsolete("This class has been replaced by GraphQL.Server.Transports.AspNetCore.AuthorizationVisitor and will be removed in v8.")]
public class AuthorizationVisitor : Transports.AspNetCore.AuthorizationVisitor
{
private readonly IAuthorizationErrorMessageBuilder _messageBuilder;
Expand Down
4 changes: 2 additions & 2 deletions tests/ApiApprovalTests/ApiApprovalTests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
<Import Project="../../Tests.props" />

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="PublicApiGenerator" Version="11.0.0" />
<PackageReference Include="PublicApiGenerator" Version="11.1.0" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ namespace GraphQL.Server.Authorization.AspNetCore
protected virtual void AddValidationError(GraphQLParser.AST.ASTNode? node, GraphQL.Validation.ValidationContext context, GraphQLParser.AST.OperationType? operationType, Microsoft.AspNetCore.Authorization.AuthorizationResult result) { }
public System.Threading.Tasks.ValueTask<GraphQL.Validation.INodeVisitor?> ValidateAsync(GraphQL.Validation.ValidationContext context) { }
[System.Obsolete("This class has been replaced by GraphQL.Server.Transports.AspNetCore.Authorizatio" +
"nValidationRule.AuthorizationVisitor and will be removed in v8.")]
"nVisitor and will be removed in v8.")]
public class AuthorizationVisitor : GraphQL.Server.Transports.AspNetCore.AuthorizationVisitor
{
public AuthorizationVisitor(GraphQL.Validation.ValidationContext context, System.Security.Claims.ClaimsPrincipal claimsPrincipal, Microsoft.AspNetCore.Authorization.IAuthorizationService authorizationService, GraphQL.Server.Authorization.AspNetCore.IAuthorizationErrorMessageBuilder authorizationErrorMessageBuilder, GraphQL.Server.Authorization.AspNetCore.AuthorizationValidationRule authorizationValidationRule) { }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ namespace GraphQL.Server.Authorization.AspNetCore
protected virtual void AddValidationError(GraphQLParser.AST.ASTNode? node, GraphQL.Validation.ValidationContext context, GraphQLParser.AST.OperationType? operationType, Microsoft.AspNetCore.Authorization.AuthorizationResult result) { }
public System.Threading.Tasks.ValueTask<GraphQL.Validation.INodeVisitor?> ValidateAsync(GraphQL.Validation.ValidationContext context) { }
[System.Obsolete("This class has been replaced by GraphQL.Server.Transports.AspNetCore.Authorizatio" +
"nValidationRule.AuthorizationVisitor and will be removed in v8.")]
"nVisitor and will be removed in v8.")]
public class AuthorizationVisitor : GraphQL.Server.Transports.AspNetCore.AuthorizationVisitor
{
public AuthorizationVisitor(GraphQL.Validation.ValidationContext context, System.Security.Claims.ClaimsPrincipal claimsPrincipal, Microsoft.AspNetCore.Authorization.IAuthorizationService authorizationService, GraphQL.Server.Authorization.AspNetCore.IAuthorizationErrorMessageBuilder authorizationErrorMessageBuilder, GraphQL.Server.Authorization.AspNetCore.AuthorizationValidationRule authorizationValidationRule) { }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@
<Import Project="../../Tests.props" />

<PropertyGroup>
<TargetFrameworks>net7.0;net6.0;net5.0;netcoreapp3.1</TargetFrameworks>
<TargetFrameworks>net8.0;net7.0;net6.0;net5.0;netcoreapp3.1</TargetFrameworks>
<Nullable>disable</Nullable>
<NoWarn>$(NoWarn);CS0618</NoWarn>
</PropertyGroup>

<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
<ProjectReference Include="..\..\src\Authorization.AspNetCore\Authorization.AspNetCore.csproj" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.*" Condition="'$(TargetFramework)' == 'net8.0'" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.*" Condition="'$(TargetFramework)' == 'net7.0'" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="6.0.*" Condition="'$(TargetFramework)' == 'net6.0'" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="5.0.*" Condition="'$(TargetFramework)' == 'net5.0'" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ Required claim 'admin' is not present.
});
}

private static ISchema BasicSchema<T>()
private static Schema BasicSchema<T>()
{
string defs = """
type Query {
Expand Down Expand Up @@ -347,7 +347,7 @@ public class BasicQueryWithAttributesAndPropertyPolicy
public string Post { get; set; } = "";
}

private ISchema NestedSchema()
private Schema NestedSchema()
{
string defs = """
type Query {
Expand Down Expand Up @@ -398,7 +398,7 @@ public class Author
public string Name { get; set; }
}

private ISchema TypedSchema()
private Schema TypedSchema()
{
var query = new ObjectGraphType();

Expand Down
6 changes: 3 additions & 3 deletions tests/Authorization.AspNetCore.Tests/ValidationTestBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,14 @@ protected void ShouldPassRule(Action<ValidationTestConfig> configure)
config.Rules.Add(Rule);
configure(config);

config.Rules.Any().ShouldBeTrue("Must provide at least one rule to validate against.");
config.Rules.ShouldNotBeEmpty("Must provide at least one rule to validate against.");

config.Schema.Initialize();

var result = Validate(config);

string message = "";
if (result.Errors?.Any() == true)
if (result.Errors?.Count > 0)
{
message = string.Join(", ", result.Errors.Select(x => x.Message));
}
Expand All @@ -51,7 +51,7 @@ protected void ShouldFailRule(Action<ValidationTestConfig> configure)
config.User = CreatePrincipal();
configure(config);

config.Rules.Any().ShouldBeTrue("Must provide at least one rule to validate against.");
config.Rules.ShouldNotBeEmpty("Must provide at least one rule to validate against.");

config.Schema.Initialize();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Import Project="../../Tests.props" />

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<Description>End to end tests for the Samples.Authorization project</Description>
</PropertyGroup>

Expand Down
6 changes: 3 additions & 3 deletions tests/Samples.AzureFunctions.Tests/EndToEndTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public async Task GraphQLGet()
{
request.Method = "GET";
request.QueryString = new QueryString("?query={count}");
}, GraphQL.RunGraphQL).ConfigureAwait(false);
}, GraphQL.RunGraphQL);

statusCode.ShouldBe(200);
contentType.ShouldBe("application/graphql-response+json; charset=utf-8");
Expand All @@ -32,7 +32,7 @@ public async Task GraphQLPost()
request.Method = "POST";
request.ContentType = "application/json";
request.Body = new MemoryStream(Encoding.UTF8.GetBytes("""{"query":"{count}"}"""));
}, GraphQL.RunGraphQL).ConfigureAwait(false);
}, GraphQL.RunGraphQL);

statusCode.ShouldBe(200);
contentType.ShouldBe("application/graphql-response+json; charset=utf-8");
Expand All @@ -45,7 +45,7 @@ public async Task Playground()
var (statusCode, contentType, body) = await ExecuteRequest(request =>
{
request.Method = "GET";
}, GraphQL.RunPlayground).ConfigureAwait(false);
}, GraphQL.RunPlayground);

statusCode.ShouldBe(200);
contentType.ShouldBe("text/html");
Expand Down
2 changes: 1 addition & 1 deletion tests/Samples.Basic.Tests/Samples.Basic.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Import Project="../../Tests.props" />

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<Description>End to end tests for the Samples.Basic project</Description>
</PropertyGroup>

Expand Down
2 changes: 1 addition & 1 deletion tests/Samples.Complex.Tests/Samples.Complex.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Import Project="../../Tests.props" />

<PropertyGroup>
<TargetFrameworks>net7.0;net6.0;net5.0;netcoreapp3.1</TargetFrameworks>
<TargetFrameworks>net8.0;net6.0;netcoreapp3.1</TargetFrameworks>
<Description>End to end tests for Samples.Server project</Description>
</PropertyGroup>

Expand Down
6 changes: 2 additions & 4 deletions tests/Samples.Complex.Tests/Serializer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,9 @@ internal static string ToJson(GraphQLRequest request)
internal static string ToJson(GraphQLRequest[] requests)
=> ToJson(Array.ConvertAll(requests, r => r.ToDictionary()));

private static readonly JsonSerializerOptions _jsonSerializerOptions = new() { DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull };
public static string ToJson(object obj)
=> JsonSerializer.Serialize(obj, new JsonSerializerOptions
{
DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull
});
=> JsonSerializer.Serialize(obj, _jsonSerializerOptions);

internal static FormUrlEncodedContent ToFormUrlEncodedContent(GraphQLRequest request)
{
Expand Down
Loading

0 comments on commit 9f2bf46

Please sign in to comment.