2013-04-25 2 views
-1

Я пытаюсь разобрать json. Я получаю следующее исключение:Исключение произошло в json parsing

An exception of type 'System.ArgumentException' occurred in Newtonsoft.Json.Silverlight.DLL but was not handled in user code 

мой C# код произошел

private void imgloginbtn_Tap_1(object sender, 
           System.Windows.Input.GestureEventArgs e) { 
    ///set flag in app.xaml for popup 
    var obj = App.Current as App; 
    obj.Popupflag = true; 
    //WhatsupServices.WhatsUpServiceSoapClient ws = 
        //new WhatsupServices.WhatsUpServiceSoapClient(); 
    WhatsupServices.WhatsUpServiceSoapClient ws = 
        new WhatsupServices.WhatsUpServiceSoapClient(); 
    ws.ChangePasswrdJsonCompleted += ws_ChangePasswrdJsonCompleted; 
    ws.ChangePasswrdJsonAsync("man", "man", "man"); 
} 
void ws_ChangePasswrdJsonCompleted(object sender, 
       WhatsupServices.ChangePasswrdJsonCompletedEventArgs e) { 
    string s = e.Result; 
    JObject obj = JObject.Parse(s); 
    string ResultCode = (string) obj["ResultCode"]; 
    string ResponceMessage = (string) obj["ResponseMessage"]; 
} 

Исключение, когда я Тринг, чтобы получить ResultCode

Помогите мне, как я могу решить эту проблему?

+2

Что струна значение 'e.Result'? –

+0

У вас может быть синтаксическая ошибка в вашем json. Пожалуйста, добавьте его. – rekire

+0

@AndreySchchekin: e.result = {«ResultCode»: 0, «ResponseMessage»: «Неверный пароль»} – MansinhDodiya

ответ

0

Я получил решение этого exception.Actully my json возвращает значение в integer, и я делаю тип casting в строке, поэтому он дает ошибку.

мое решение:

string s = e.Result; 
    JObject obj = JObject.Parse(s); 
    int ResultCode = (int) obj["ResultCode"]; 
    string ResponceMessage = (string) obj["ResponseMessage"]; 
Смежные вопросы