今までqtを使っていましたが、やはりC#を書くときに使い慣れたものを使いたいのでこれを見つけました
Qt が以前にこれを書きました
// 定义 { } 对象
QJsonObject sessionObj;
// 插入元素,对应键值对
sessionObj.insert("type", "BIZ_CARD");
QJsonObject object;
object.insert("username", ui->lineEditUsername->text());
object.insert("password", ui->lineEditPassword->text());
object.insert("session", sessionObj);//防止重复登录
QJsonDocument doc;
doc.setObject(object);
QByteArray ba = doc.toJson(QJsonDocument::Compact);
qDebug()<<"data:::"<<ba;
C#でも同様の書き方があります
JSONObject session = new JSONObject();
session.Put("type", "BIZ_CARD");
JSONObject json = new JSONObject();
json.Put("username", "186xxxx4792");
json.Put("password", "123xx78");
json.Put("session", session);
Console.WriteLine(json.ToString());
こうやって生成されるんですね
{"ユーザー名":"186xxxx4792"、"パスワード":"123xxx678"、"セッション":{"タイプ":"BIZ_CARD"}}
ただし、これには Nuget には含まれていないサードパーティ DLL への参照が必要です。ダウンロード後の圧縮パッケージにはチュートリアルが含まれています。
ソースを参照できます
[C#]JSONObject による json の解析、C# asp.net JSON parsing_c# jsonobject_cc_want のブログ - CSDN ブログ
Github オープンソース アドレス:
https://github.com/CCwant/ForceJson