.NETでC#オブジェクトをJSON文字列にするにはどうすればいいですか?
こんな授業もあります。
class MyDate
{
int year, month, day;
}
class Lad
{
string firstName;
string lastName;
MyDate dateOfBirth;
}
そして、Lad
オブジェクトを以下のようなJSON文字列にしたいと思います。
{
"firstName":"Markoff",
"lastName":"Chaney",
"dateOfBirth":
{
"year":"1901",
"month":"4",
"day":"30"
}
}
(フォーマットなし).このリンク]1を見つけましたが、.NET 4にはない名前空間を使用しています。また、JSON.NETについても聞いたことがありますが、そのサイトは現在ダウンしているようですし、外部のDLLファイルを使用することにも抵抗があります。JSON文字列ライターを手動で作成する以外の選択肢はありますか?
859
3
**私たちは皆、ワンライナーが大好きですから。
... これはNewtonsoftのNuGetパッケージに依存しています。Newtonsoftは人気があり、デフォルトのシリアライザよりも優れています。
ドキュメントです。[JSONのシリアライズとデシリアライズ][1]。
[1]: http://www.newtonsoft.com/json/help/html/SerializingJSON.htm
JavaScriptSerializer
][1]クラスを使用することができます(
System.Web.Extensions`への参照を追加)。完全な例です。
DataContractJsonSerializer`クラスを使用します。MSDN1, MSDN2.
私の例です。こちらをご覧ください。
また、
JavaScriptSerializer
とは異なり、JSONの文字列からオブジェクトを安全にデシリアライズすることもできます。しかし、個人的にはやはりJson.NETの方が好きです。