当前位置: 首页 > 面试题库 >

多个JsonProperty名称分配给单个属性

邹嘉荣
2023-03-14
问题内容

我有两种想要反序列化为一个类的JSON格式。我知道我们不能将两个[JsonProperty]属性应用于一个属性。

您能否建议我实现这一目标的方法?

string json1 = @"
    {
        'field1': '123456789012345',
        'specifications': {
            'name1': 'HFE'
        }
    }";

string json2 = @"
    {
        'field1': '123456789012345',
        'specifications': {
            'name2': 'HFE'
        }
    }";

public class Specifications
{
    [JsonProperty("name1")]
    public string CodeModel { get; set; }
}

public class ClassToDeserialize
{
    [JsonProperty("field1")]
    public string Vin { get; set; }

    [JsonProperty("specification")]
    public Specifications Specifications { get; set; }        
}

我希望name1并且name2两者都可以反序列化为name1规范类的属性。


问题答案:

一个不需要转换器的简单解决方案:只需向您的类添加第二个private属性,将其标记为[JsonProperty("name2")],然后将其设置为第一个属性:

public class Specifications
{
    [JsonProperty("name1")]
    public string CodeModel { get; set; }

    [JsonProperty("name2")]
    private string CodeModel2 { set { CodeModel = value; } }
}

小提琴:https :
//dotnetfiddle.net/z3KJj5



 类似资料:
  • 问题内容: 在Python中,我们可以将函数分配给变量。例如,math.sine函数: 有没有简单的方法可以将多个函数(即一个函数的一个函数)分配给一个变量?例如: 问题答案: 我认为作者想要的是某种形式的功能链。通常,这很困难,但是对于 接受一个论点 返回一个值, 列表中上一个函数的返回值与列表中下一个函数的输入类型具有相同的返回值 我们说有一个需要链接的函数列表,其中有一个参数,然后返回一个参

  • 我目前正在努力设置产品变化作为压缩产品目录的一种手段...我们目前有几千个单独的产品页面和变化,我正在寻找一种方法来压缩每个产品类型到一个单一的变化。销售的产品与车辆相关,因此适合每个车型的年份范围: WooCommerce的罐装可变产品为每种属性组合创造了新的变化。例如,“Body Style A”将创建两个相同的变体,我更希望有一个变体,在“年份”是2002年或2003年,而不是只指定一个值。

  • 因此,我昨天开始了一个问题:基于同一行中的值的多个pandas赋值,我想知道如何对一行数据进行排序,并将排序分配给同一行中的不同列。我已经按照Ed Chum的建议解决了这个问题:如何一次将一个函数应用于pandas数据帧中的多个列。 它确实起作用了,但我注意到我在这一过程中创建了错误的列。一旦我修复了这个bug,它就不再工作了。。。。 因此,我尝试在一个玩具示例上重现这个问题,但在玩具示例上也不起

  • 使用QUUKUS我在执行时得到以下错误: 原因:java。lang.IllegalArgumentException:名称“security.jaxrs.deny unnotated endpoints”属性的多个匹配属性由两个公共布尔io匹配。夸克斯。放松点。反应性。常见的运行时。jaxrsecurityconfig。denyJaxRs和公共布尔io。夸克斯。放松点。运行时。jaxrsecuri

  • 我们使用的是Spring boot。我们有三个环境、、。我们当前的配置结构 开发 同样,对于每个环境,我们都有一个yml和属性文件。经过一年的开发,现在配置文件的单个yml文件变成了一个大型单片配置文件。 对于下面这样的配置文件,可以有多个配置文件吗?

  • 问题内容: 我在这里遇到一种情况,试图充当两个API之间的网关。我需要做的是: 向APIa提出请求; 将XML响应解析(编组)为java对象; 对其进行很少的更改; 然后以XML(解组)形式向另一端(APIb)做出响应。 事实是,我使用同一对象来解析API响应并将响应发送到另一端。 正如评论所说:我收到但我需要发送 有没有一种方法可以完成此操作而不必创建另一个带有ResultCode的额外类? 提