DevBetterCom / DevBetterCom/DevBetter.JsonExtensions

Fails to deserialize when changing naming policy.

Aperta
#1 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C#
Stelle
4
Fork
1
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

The naming policy seems to be ignored.

Changing the PropertyNamingPolicy to CamelCase has no effect, it does not throw an exception and returns the object with its defaults.

For example, this test fails:

```csharp
[Fact]
public void SerializeProperlyWhenNamingPolicyIsNotTheDefault()
{
var jsonString = @"{""id"":3, ""title"": ""Title""}";
var deserializeOptions = new JsonSerializerOptions()
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase
};
deserializeOptions.SetMissingMemberHandling(MissingMemberHandling.Error);

var response = JsonSerializer.Deserialize(jsonString, deserializeOptions);

response.Title.ShouldBe("Title");
}
```

But, it works if I remove the line:

```csharp
deserializeOptions.SetMissingMemberHandling(MissingMemberHandling.Error);
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia eseguendo il test denominato SerializeProperlyWhenNamingPolicyIsNotTheDefault con JsonSerializer.Deserialize, quindi esamina come SetMissingMemberHandling interagisce con PropertyNamingPolicy e con l'esempio WeatherForecast. Il lavoro è completato quando CamelCase JSON valorizza response.Title e la gestione dei membri mancanti rimane effettiva.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
backend
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Specificata chiaramente
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.