Ich versuche, einen String-Inhalt in ein Objekt zu deserialisieren, aber ich möchte den Inhalt Groß-und Kleinschreibung beachten. Der Code sollte nur dann erfolgreich sein, wenn die Zeichenfolge Kleinbuchstaben aufweist und bei Großbuchstaben fehlschlägt. Folgendes ist die Klasse:JsonConvert DeserializeObject case sensitive
internal class ResponseList
{
[DataMember]
[JsonProperty]
internal List<Response> Value { get; set; }
}
internal class Response
{
[DataMember]
[JsonProperty]
internal string Id { get; set; }
[DataMember]
[JsonProperty]
internal string Location { get; set; }
[DataMember]
[JsonProperty]
internal PlanClass Plan { get; set; }
}
internal class PlanClass
{
[DataMember]
[JsonProperty]
internal string Name { get; set; }
[DataMember]
[JsonProperty]
internal string Product { get; set; }
[DataMember]
[JsonProperty]
internal string Publisher { get; set; }
}
Folgendes ist der Code, den ich habe. Aber dies ist nicht Groß-und Kleinschreibung. sowohl Groß- und Klein Es ist für den Erfolg:
string content = File.ReadAllText(contentFilePath);
JsonSerializerSettings jsonSerializerSettings1 = new JsonSerializerSettings()
{
ContractResolver = new CamelCasePropertyNamesContractResolver()
};
ResponseList response = (ResponseList)JsonConvert.DeserializeObject(contentResourceOutput, typeof(ResponseList), Constants.JsonSerializerSettings);
Der Code sollte nur gelingen, wenn der Inhalt:
{
"value": [
{
"id": "id1",
"location": "location1",
"plan": {
"name": "free",
"product": "product1",
"publisher": "publisher1"
}
}
]
}
und fehlschlagen, wenn selbst wenn eine der Tasten Großbuchstaben ist. Z.B.
{
"value": [
{
"Id": "id1",
"Location": "location1",
"plan": {
"Name": "free",
"product": "product1",
"publisher": "publisher1"
}
}
]
}
Beachten Sie, dass nur die Keys/Property-Namen Kleinbuchstaben sein sollten. Die Werte können Großbuchstaben sein. Gibt es eine Möglichkeit, JsonConvert.Deserializeobject case sensitive zu machen?
@Romonov sicher Ding. Die aktualisierte Antwort wird die zweite Zeichenfolge ordnungsgemäß zurückweisen. –
Das funktioniert perfekt! – Romonov
@Romonov genial, glücklich zu helfen :) –