繁体   English   中英

如何将嵌入的 JSON 字符串转换为 C# 中的 JSON Object

[英]How to convert an embedded JSON string to a JSON Object in C#

我有一个 function 将数据作为 json 字符串返回,我在 api 中调用该字符串,但我希望我的 api 返回 json object 而不是 8817955830

这是 function 的样子:

   public JObject InquiryPaymentAPI(string id)
        {
           
            string paymentInfo = PaymentInquiry.IPayment(id);
            return JObject.Parse(paymentInfo);

        }

这将返回 json object 但嵌入部分看起来像一个空数组我如何让它返回所有数据请帮助我是 c# 的新手

{
    "paymentId": [],
    "paymentRequestId": [],
    "paymentAmount": [
        [
            []
        ],
        [
            []
        ]
    ],
    "paymentStatus": [],
    "result": [
        [
            []
        ],
        [
            []
        ],
        [
            []
        ]
    ]
}

如果您知道 json 响应,则可以为其创建一个 model class。 在 VS 2022 上,您可以右键单击编辑器并执行 paste special Edit --> Paste special --> Paste JSON as Classes 你应该得到类似下面的东西。

public class Model 
{
    public object[] paymentId { get; set; }
    public object[] paymentRequestId { get; set; }
    public object[][][] paymentAmount { get; set; }
    public object[] paymentStatus { get; set; }
    public object[][][] result { get; set; }
}

在您的代码中使用Model class 后,您的代码应如下所示

using System.Text.Json;

public Model InquiryPaymentAPI(string id)
{
   
    string paymentInfo = PaymentInquiry.IPayment(id);
    return JsonSerializer.Deserialize<Model>(paymentInfo);

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM