Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# JSON反序列化调试错误_C#_Json_Silverlight_Windows Phone_Windows Phone 7.1 - Fatal编程技术网

C# JSON反序列化调试错误

C# JSON反序列化调试错误,c#,json,silverlight,windows-phone,windows-phone-7.1,C#,Json,Silverlight,Windows Phone,Windows Phone 7.1,我尝试从我的链接下载数据并反序列化它。我试图用JSON.Net来实现这一点,但我遇到了一些错误。我已经创建了一个结构,它复制了链接中JSON数据的结构。帮助我。 JsonUserObject obj=JsonConvert.DeserializeObject(json)-这会引发System.Reflection.TargetInvocationException。 而且,它不允许我调试它,它会在程序加载时崩溃,如果我把断点放在任何它没有命中的地方,它就会立即出错 这就是我的全部代码: usi

我尝试从我的链接下载数据并反序列化它。我试图用JSON.Net来实现这一点,但我遇到了一些错误。我已经创建了一个结构,它复制了链接中JSON数据的结构。帮助我。
JsonUserObject obj=JsonConvert.DeserializeObject(json)-这会引发System.Reflection.TargetInvocationException。
而且,它不允许我调试它,它会在程序加载时崩溃,如果我把断点放在任何它没有命中的地方,它就会立即出错

这就是我的全部代码:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using Newtonsoft.Json;

namespace PhoneAppChanging
{
    public partial class MainPage : PhoneApplicationPage
    {
        //private string json;        
        // Конструктор
        public MainPage()
        {
            InitializeComponent();
        }

        private void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
        {
            if (e.Error != null)            
            { return; }
            string json = e.Result;
            try
            {
                JsonUserObject obj = JsonConvert.DeserializeObject<JsonUserObject>(json);
            }
            catch (Exception)
            {
                throw new Exception();
            }
        }

        private void button1_Click(object sender, RoutedEventArgs e)
        {   
            WebClient wc = new WebClient();
            wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
            wc.DownloadStringAsync(new Uri("http://barnistan.belinski.biz/en/barn-i-stan/export/cats"));
        }
    }
}

谢谢大家的帮助。

你收到错误消息了吗?Smt像这样的系统。反射。目标职业例外:这不是消息。这是个例外。您可以从调试器中读取它,也可以将调用包装在try/catch块中,并在代码中获取e.Message。我试图捕获异常。我有“MithingMethodException”,这“无法从程序集'Newtonsoft.Json,Version=6.0.0.0,Culture=neutral,PublicKeyToken=30ad4fe6b2a6eed'加载类型'Newtonsoft.Json.JsonConvert'”
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Newtonsoft;
using Newtonsoft.Json;
using Newtonsoft.Json.Bson;
using Newtonsoft.Json.Converters;
using System.IO;
using Newtonsoft.Json.Linq;

[JsonObject]
public struct JsonUserObject
{
    [JsonProperty]
    public string status
    { get; set; }
    [JsonProperty]
    public Data[] data
    { get; set; }
}

[JsonObject(MemberSerialization.OptIn)]
public struct Data
{
    [JsonProperty]
    public string id
    { get; set; }
    [JsonProperty]
    public string title
    { get; set; }
    [JsonProperty]
    public string count
    { get; set; }
    [JsonProperty]
    public string subcount
    { get; set; }
    [JsonProperty]
    public string cat_img
    { get; set; }
    [JsonProperty]
    public Childs[] Childs
    { get; set; }
}

[JsonObject(MemberSerialization.OptIn)]
public struct Childs
{
    [JsonProperty]
    public string id
    { get; set; }
    [JsonProperty]
    public string title
    { get; set; }
    [JsonProperty]
    public string count
    { get; set; }
    [JsonProperty]
    public string subcount
    { get; set; }
    [JsonProperty]
    public string cat_img
    { get; set; }
    [JsonProperty]    
    public smallChilds[] childs
    { get; set; }
}

[JsonObject(MemberSerialization.OptIn)]
public struct smallChilds
{
    [JsonProperty]
    public string id
    { get; set; }
    [JsonProperty]
    public string title
    { get; set; }
    [JsonProperty]
    public string count
    { get; set; }
    [JsonProperty]
    public string subcount
    { get; set; }
    [JsonProperty]
    public string cat_img
    { get; set; }
}