C# 将对象序列化为JSON-从序列化类的字段中获取属性名
我有一个ParameterInfo类C# 将对象序列化为JSON-从序列化类的字段中获取属性名,c#,json,serialization,json.net,C#,Json,Serialization,Json.net,我有一个ParameterInfo类 [JsonObject(MemberSerialization.OptIn)] public class ParameterInfo { public Parameter Param { get; protected set; } [JsonProperty(Order = 0)] public string Name { get => GetCultureName(); } [Json
[JsonObject(MemberSerialization.OptIn)]
public class ParameterInfo
{
public Parameter Param { get; protected set; }
[JsonProperty(Order = 0)]
public string Name { get => GetCultureName(); }
[JsonProperty(Order = 1)]
public string Value { get => Param.AsString(); }
}
我需要以以下方式将我的类序列化为json:
{"PHY_MATERIAL_PARAM_EXP_COEFF2": 0.0}
我只能得到这个
{
"Name": "PHY_MATERIAL_PARAM_EXP_COEFF2",
"Value": 0.0
}
我如何使用Newton Json和?我正在寻找一种性能最高的方法。您可以尝试编写自定义: 并使用
[JsonConverter(typeof(parameterInfo JsonConverter))]
属性标记类,或将其传递给JsonConvert
:
JsonConvert.SerializeObject(new ParameterInfo(), new ParameterInfoJsonConverter())
您可以尝试编写自定义: 并使用
[JsonConverter(typeof(parameterInfo JsonConverter))]
属性标记类,或将其传递给JsonConvert
:
JsonConvert.SerializeObject(new ParameterInfo(), new ParameterInfoJsonConverter())
看起来不错,只是缺少大括号,因此无法生成有效的Json-您需要添加
writer.WriteStartObject()
和writer.WriteEndObject()
-see看起来不错,只是缺少大括号,因此无法生成有效的Json-您需要添加writer.WriteStartObject()
和writer.WriteEndObject()代码>-请参阅