fix nuget
All checks were successful
Build / Compute Version (push) Successful in 5s
Build / Build Nuget package (CringeBootstrap.Abstractions) (push) Successful in 2m38s
Build / Build Nuget package (NuGet) (push) Successful in 2m24s
Build / Build Nuget package (CringePlugins) (push) Successful in 2m48s
Build / Build Nuget package (SharedCringe) (push) Successful in 2m29s
Build / Build Launcher (push) Successful in 3m50s

This commit is contained in:
zznty
2024-10-28 00:46:37 +07:00
parent f75e4e7b4a
commit 78be6bd837
20 changed files with 472 additions and 93 deletions

View File

@@ -6,7 +6,7 @@ namespace NuGet.Converters;
public class FrameworkJsonConverter(FrameworkNameFormat format) : JsonConverter<NuGetFramework>
{
public override NuGetFramework? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
public override NuGetFramework Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
{
if (reader.TokenType != JsonTokenType.String)
throw new JsonException("Invalid framework string");
@@ -23,12 +23,26 @@ public class FrameworkJsonConverter(FrameworkNameFormat format) : JsonConverter<
public override void Write(Utf8JsonWriter writer, NuGetFramework value, JsonSerializerOptions options)
{
writer.WriteStringValue(format switch
writer.WriteStringValue(FormatValue(value));
}
private string FormatValue(NuGetFramework value)
{
return format switch
{
FrameworkNameFormat.ShortFolderName => value.GetShortFolderName(),
FrameworkNameFormat.FrameworkName => value.DotNetFrameworkName,
_ => throw new ArgumentOutOfRangeException()
});
};
}
public override NuGetFramework ReadAsPropertyName(ref Utf8JsonReader reader, Type typeToConvert,
JsonSerializerOptions options) => Read(ref reader, typeToConvert, options);
public override void WriteAsPropertyName(Utf8JsonWriter writer, NuGetFramework value,
JsonSerializerOptions options)
{
writer.WritePropertyName(FormatValue(value));
}
}