从 API 调用中解析动态 valueType

问题描述

我正在为我们的网站进行第 3 方实施。我在代码调用的 API 返回一个唯一值对。

ValueType: //code,percent,money
Value: //depending on ValueType can be string,int,or object { currency: string,amount: decimal }

我正在尝试解决这个问题,但似乎无法找到一种正确的方法来解析它在具有 enumobject 之外的 C# 对象上。

public class ReturnType
{
    public EnumValueType ValueType { get; set; }
    public object Value { get; set; }
}

public enum EnumValueType
{
    MONEY,PERCENT,CODE
}

这使得访问 Value 变得更加困难。我正在寻找其他解决方案。

对 POCO 类以适当方式解析它的任何建议将不胜感激。

解决方法

也许你可以创建 3 个方法并使用重载(相同的方法名称,3 个不同的签名),1 个接受字符串/枚举和字符串,1 个接受字符串/枚举和整数,最后一个,字符串/枚举和对象创建一个新类并定义货币:字符串、金额:十进制属性并使其接受。我不知道我有没有帮助,但是你去...