gpt4 book ai didi

c# - 使用动态属性名称将数据序列化为 json 字符串

转载 作者:可可西里 更新时间:2023-11-01 08:55:09 26 4
gpt4 key购买 nike

我有一个接受键和值的方法。两个变量都可以有动态内容。

key => 是一个动态字符串,可以是任何东西,例如“上次发送日期”
value => 是一个对象,它可以是任何东西,例如"2014-10-10"

由于键是动态值,例如“LastSentDate”或传递给方法的任何键,因此我希望 json 属性是键字符串的值,而不是字面上的键本身...

public void SetRowVariable(string key, object value)
{
var obj = new { key = value }; // key property is literally taken maybe anonym object is not a good idea?
string jsonString = JsonConvert.SerializeObject(obj);

// jsonString should have that output => "{ "LastSentDate": "2014-10-10" }"
}

我必须如何序列化获得所需输出的 ​​obj?

“key”属性也必须有可能包含特殊字符,如“!”§$%&/()=?"`

我很遗憾地使用 .NET 3.5。

最佳答案

您可以使用 JObject(在 Newtonsoft.Json.Linq 中):

var obj = new JObject();
obj[key] = JToken.FromObject(value);

string jsonString = obj.ToString();

关于c# - 使用动态属性名称将数据序列化为 json 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26874014/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com