将json转换为预定义的动态模型

时间:2019-04-12 09:09:57

标签: c# refit

我正在一个项目中,我正在使用Refit库进行Http调用并将数据解析为特定模型。这在大多数情况下都很好用,但是,我有一个问题,我在运行时将Json解析为预定义的模型。举例来说,API的以下响应会根据应用程序用户必须执行的操作而有所不同。我的问题是如何将Json的“操作”字段解析为特定模型。我已经预定义了可以为其映射值的所有模型。就像我有一个“ ResetPassword”,“ TwoFactorAuthnentication”等。我想使用TypeAdapter或等效的东西来将值解析为特定模型。

任何帮助将不胜感激。

   "authorizeActions": [
        {
            "action": "",
            "required": true,
            "webFallback": true
         }
    ]

   "authorizeActions": [
        {
             "action": "resetPassword",
             "required": true,
             "webFallback": true
         }
     ]

下面是我当前正在使用的模型

public class AuthorizeActions
{

    [JsonProperty(PropertyName = "required")]
    public bool Required { get; set; }


    [JsonProperty(PropertyName = "webFallback")]
    public bool WebFallback { get; set; }


    //Here i need to define the action , what I want is to be parsed to a 
    concrete class like, however the value can change, one time it can
    be "ResetPassword" but it can also be "TwoFactorAuthentication" etc etc.

}

0 个答案:

没有答案