解析动态数据

时间:2013-12-07 17:44:50

标签: c# json dynamic

我正在尝试使用动态对象解析JSON。这是我正在使用的库,JSON数据转换器:https://github.com/cmcdonaldca/shopify.net

这是我的错误消息:

  

Microsoft.CSharp.RuntimeBinder.RuntimeBinderException:'string'可以   不包含'产品'的定义

这是我的JSON:

http://pastebin.com/pnmz7jN0

这是我的代码:

    public void GetProducts()
    {
        // The JSON Data Translator will automatically decode the JSON for you
        dynamic data = _api.Get("/admin/products.json");

        // the dynamic object will have all the fields just like in the API Docs
        foreach (var product in data.products)
        {
            Console.Write(product.title);
        }
    }

我已尝试过data.products和data,但我无法获取产品对象。

1 个答案:

答案 0 :(得分:0)

考虑data[0].title开始,但在调试模式下,您应该能够浏览对象,或使用即时窗口并运行一些手动查询。

关于错误,您的dynamic data似乎只是一个字符串对象,请尝试使用自己的代码,只需删除“产品”字样。

public void GetProducts()
{
    // The JSON Data Translator will automatically decode the JSON for you
    dynamic data = _api.Get("/admin/products.json");

    // the dynamic object will have all the fields just like in the API Docs
    foreach (var product in data) //here is the change from the code you posted
    {
        Console.Write(product.title);
    }
}

Your sample data parsed