如果我用任何其他硬編碼的字串值替換我的“temp”,我的下面的代碼就可以正常作業。但我不確定如何每次在我創建的 JSON 中傳遞臨時值。我怎樣才能解決這個問題?我需要讓我的 json 類似于{"device1": 24, "device2": 25, "device3": 26}
for (int i = 1; i <= numOfEvents; i )
{
string temp = (i 23).ToString();
dynamic foo = JObject.FromObject(new { Hello = "{ \"device\" : temp }" });
uj5u.com熱心網友回復:
如果你想使用 JObject
var numOfEvents = 3;
JObject jo = new JObject();
for (int i = 1; i <= numOfEvents; i )
jo.Add("device" i.ToString(), i 23);
JObject jsonObject = new JObject();
jsonObject["Hello"] = jo;
結果
{ "Hello": {"device1" : 24,"device2" : 25,"device3" : 26}}
有些人看到字串生成器時會大發雷霆,盡管它不像帶有庫的序列化器那么重。因此,如果您只想將幾個專案放入 json 中,則可以只使用一個字串。如果由于某些原因您不想安裝重量級的 json 序列化程式庫,那么手動創建 json 字串非常方便,因為您只需要創建一個短字串。
numOfEvents = 2;
var json = string.Empty;
for (int i = 1; i <= numOfEvents; i )
{
string temp = (i 23).ToString();
json = $",\"device{i}\" : {temp}";
}
json = "{ \"Hello\": {" json.Substring(1) "}}";
但是在某些情況下,當您需要很多專案(例如用于測驗)時,最好使用字串生成器
var numOfEvents = 3;
StringBuilder sb= new ();
for (int i = 1; i <= numOfEvents; i )
{
string temp = (i 23).ToString();
sb.Append( $",\"device{i}\" : {temp}");
}
var json="{ \"Hello\": {" sb.ToString().Substring(1) "}}";
var jsonObject = JObject.Parse(json);
結果
{ "Hello" : { "device1" : 24,"device2" : 25,"device3" : 26 }
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/429803.html
下一篇:使用協程更新UI
