Daugiau
Kaip paversti C# objektą į JSON eilutę naudojant .NET?
Turiu tokių pamokų:
class MyDate
{
int year, month, day;
}
class Lad
{
string firstName;
string lastName;
MyDate dateOfBirth;
}
Ir norėčiau paversti Lad
objektą į JSON eilutę taip:
{
"firstName":"Markoff",
"lastName":"Chaney",
"dateOfBirth":
{
"year":"1901",
"month":"4",
"day":"30"
}
}
(be formatavimo). Radau šią nuorodą, bet joje naudojama vardų erdvė, kurios nėra .NET 4. Taip pat girdėjau apie JSON.NET, bet šiuo metu jų svetainė, atrodo, neveikia, o aš nenoriu naudoti išorinių DLL failų. Ar yra kitų galimybių, be to, kad rankiniu būdu sukurti JSON eilutės rašytuvą?
859
3
Kadangi mes visi mėgstame vieną eilutę
... šis priklauso nuo "Newtonsoft NuGet" paketo, kuris yra populiarus ir geresnis už numatytąjį serializatorių.
Dokumentacija: Serializavimas ir deserializavimas JSON]1
Galite naudoti
JavaScriptSerializer
klasę (pridėkite nuorodą įSystem.Web.Extensions
):Išsamus pavyzdys:
Naudokite
DataContractJsonSerializer
klasę: MSDN1, MSDN2.Mano pavyzdys: ČIA.
Jis taip pat gali saugiai deserializuoti objektus iš JSON eilutės, kitaip nei
JavaScriptSerializer
. Tačiau man asmeniškai vis dar labiau patinka Json.NET.