如何在反序列化时忽略下划线

5
我们是否有像Golang中的json注释一样的东西?
type FieldType struct {
    TypeName      string          `json:"typeName"`
    CodeType      string          `json:"codeType"`
    Suffix        string          `json:"suffix"`
    PropertiesRaw json.RawMessage `json:"properties"`
    Properties    FieldTypePropertyMap
}

我有一个 JSON 字符串:

{ "long_name":"dffdf" }

我的类:

public class Result
{
  public int LongName {get; set;}
}

由于下划线的存在,LongName总是为null,而我不想在我的类属性中使用下划线。在反序列化时是否有忽略下划线的选项?

1
或者您可以按属性进行操作,如.NET NewtonSoft JSON deserialize map to a different property name所示。 - dbc
1
谢谢@dbc,是的,我只是在寻找类似于:json忽略下划线之类的东西。这就是为什么我没有找到这些问题的原因。感谢您的帮助 :) - Franva
1个回答

8

不是完全忽略,但你可以像这样使用属性名称进行修饰:

public class Result
{
    [JsonProperty(PropertyName = "long_name")]
    public int LongName { get; set; }
}

谢谢Travis,我相信这会起作用的,最终我选择了JsonSerializerSettings,因为它更方便。对于微调,我会采用这种方式。 - Franva

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接