Я создал одно приложение веб-службы в Windows Phone 7. Это массив JSON, полученный из нижеприведенного URI.
... [{ "ID": 4, "имя": "Бангалор"}, { "ID": 1, "имя": "Chennai"}, { "ID": 3, "имя": "Хайдарабад" }, { "ID": 2, "имя": "Mumbai"}] ...
Элемент списка = (Список) ds.ReadObject (msnew);
В этой строке один баг (это говорит пока бега).
Произошла ошибка десериализации объекта типа. Данные на корневом уровне недействительны. Строка 1, позиция 1.
кодирование:
public MainPage ()
{
InitializeComponent ();
}
[DataContract]
public class Item
{
[DataMember]
public int id
{
get;
set;
}
[DataMember]
public string name
{
get;
set;
}
}
private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
WebClient wc = new WebClient();
wc.DownloadStringAsync(new Uri("http://75.101.161.83:8080/CityGuide/Cities?authId=CITY4@$pir*$y$t*m$13GUID*5"));
wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
}
void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
string MyJsonString = e.Result;
// MessageBox.Show(e.Result);
DataContractSerializer ds = new DataContractSerializer(typeof(Item));
MemoryStream msnew = new MemoryStream(Encoding.UTF8.GetBytes(MyJsonString));
List<Item> item = (List<Item>)ds.ReadObject(msnew);
}