无法在 asp mvc C# 中获取 Json 数据解析

Posted

技术标签:

【中文标题】无法在 asp mvc C# 中获取 Json 数据解析【英文标题】:Could not get Json data parse in asp mvc C# 【发布时间】:2017-04-26 08:36:26 【问题描述】:

我是 asp.net MVC 的新手,我想解析 JSON 数据,所以我做了一些研究如何做到这一点并按照它做了,但没有得到结果。

我在使用 try catch 时遇到了这个错误

“long”不包含“listDemo”的定义

Json 数据:存储在var response


    "RequestNo" : 232,
    "CardDetail" : 
        "Mobileno" : 98983232323,
        "Balance" : 0,
        "RemitLimitAvailable" : 2323
    ,
    "listDemo" : 
        "TAG0" : 
            "Code" : 2323,
            "Name" : Demo,
            "Type" : Demo
        ,
        "TAG1" : 
            "Code" : 424,
            "Name" : Demo,
            "Type" : Demo
        
    ,
    "Response" : SUCCESS,
    "Message" : REQUEST SUCCESSFULLY COMPLETED.,
    "Code" : 300

C#代码:

dynamic dataObj = JsonConvert.DeserializeObject(response);
try

    string benCode = dataObj.listDemo.TAG0.Code;

catch (Exception ex)

    table += ex.Message;

有没有办法获取数据?

【问题讨论】:

【参考方案1】:

字符串 benCode = dataObj.Beneficiary.TAG0.Code;

我在您的 JSON 中没有发现任何 Beneficiary ...

使用

int benCode = dataObj.listDemo.TAG0.Code;

(listDemo.TAG0.Code 还返回一个整数而不是字符串)

旁注:有效的 JSON 示例是


    "RequestNo" : 232,
    "CardDetail" : 
        "Mobileno" : 98983232323,
        "Balance" : 0,
        "RemitLimitAvailable" : 2323
    ,
    "listDemo" : 
        "TAG0" : 
            "Code" : 2323,
            "Name" : "Demo",
            "Type" : "Demo"
        ,
        "TAG1" : 
            "Code" : 424,
            "Name" : "Demo",
            "Type" : "Demo"
        
    ,
    "Response" : "SUCCESS",
    "Message" : "REQUEST SUCCESSFULLY COMPLETED.",
    "Code" : 300

【讨论】:

我做到了,但仍然有同样的问题。 @ManishTiwari 为什么要更改您发布的原始代码? @ManishTiwari ...顺便说一句,您的错误 'long' does not contain a definition for 'listDemo' 无法验证。所以考虑制作一个Minimal, Complete, and Verifiable example

以上是关于无法在 asp mvc C# 中获取 Json 数据解析的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET MVC C# - 显示类属性名称而不是 JSON 中的属性名称

如何将 C# 属性指定给 ASP.NET MVC 中的 Json 对象?

asp.net C# mvc2中controller的无法获取参数

ASP.NET MVC获取微信返回的json数据分页

JsonConvert 在 Newtonsoft.Json Asp.net MVC C# 中不起作用

模型在使用 C# 将 POST 方法作为参数传递给 ASP.NET MVC 中同一控制器的 GET 方法时获取 NULL