Thursday, 15 January 2015

c# - system.nullreferenceexception when parsing json -



c# - system.nullreferenceexception when parsing json -

i trying parse json file , having major problems above device says "object reference not set instance of object." i'm lost.

here code

mypage.xaml.cs

void webclient_openreadcompleted(object sender, openreadcompletedeventargs e) { datacontractjsonserializer ser = null; seek { ser = new datacontractjsonserializer(typeof(observablecollection<user>)); observablecollection<user> user = ser.readobject(e.result) observablecollection<user>; foreach (user em in user) { txbname.text = "username: " + em.username; txbfirstname.text = "firstname:" +em.firstname; txbsurname.text ="surname: " +em.surname ; txbemail.text = "email: " + em.email; } } grab (exception ex) { messagebox.show(ex.message); } } private void btngetdata_click(object sender, eventargs e) { seek { webclient webclient = new webclient(); uri uri = new uri("http://beta.cloud-education.cu.cc/api/user/1"); webclient.openreadcompleted += new openreadcompletedeventhandler(webclient_openreadcompleted); webclient.openreadasync(uri); } grab (exception ex) { messagebox.show(ex.message); } }

user.cs

class user { public int id {get; set;} public string username {get; set;} public string firstname {get; set;} public string surname {get;set;} public string email {get;set;} public string liveid { get; set; } public int language { get; set; } public int subjects { get; set; } }

i can not see i'm going wrong uri right , output of json

{"id":1,"username":"test1","firstname":"fir1","surname":"sur1","email":"test1@contoso.com","liveid":"lid1","language":"1","subjects":"1"}

update- didnt realize 1 of strings not set right still same error update 2 - john when run app intermediate window

a first chance exception of type 'system.nullreferenceexception' occurred in c_sharp_wp8_clo_edu.dll exception of type 'system.nullreferenceexception' occurred in c_sharp_wp8_clo_edu.dll , wasn't handled before managed/native boundary first chance exception of type 'system.nullreferenceexception' occurred in c_sharp_wp8_clo_edu.dll exception of type 'system.nullreferenceexception' occurred in c_sharp_wp8_clo_edu.dll , wasn't handled before managed/native boundary

and displayed after add-on

system.nullreferenceexception: object reference not set instance of object.

at c_sharp_wp8_clo_edu.viewinfo.webclient_openreadcompleted(object sender, openreadcompletedeventargs e)

update 3 - have scanned everywhere can see no success. update 4 - implimented new code , got error on phone type'c_sharp_wp8_clou_edu.user' cannot serialized. consider making datacontractattribute attribute, , marking of members want serialized satamemberattribute attribute. alturnatively, can ensure type public , has parameterless constructor - public members of type serialied , no attributes reqired.

this major forwards move sense more help please please allow me know

your json info not array, it's singular object, when seek deserialize observablecollection, returns null. seek code instead

void webclient_openreadcompleted(object sender, openreadcompletedeventargs e) { datacontractjsonserializer ser = null; seek { ser = new datacontractjsonserializer(typeof(user)); var user = ser.readobject(e.result) user; txbname.text = "username: " + user.username; txbfirstname.text = "firstname:" + user.firstname; txbsurname.text ="surname: " + user.surname; txbemail.text = "email: " + user.email; } grab (exception ex) { messagebox.show(ex.message); } }

c# json windows-phone-8 nullreferenceexception

No comments:

Post a Comment