在上篇手記《開心網輔助程序開發手記》中,簡單記錄了如何登錄開心網,獲取“爭車位”的相關數據:玩家(泊車者)信息、玩家車輛停車信息、玩家私家車位停車情況等。在這篇手記中,將簡單描述如和獲取玩家好友信息及玩家私家車位停車情況。話不多說,進入正文。
一、獲取玩家好友信息
其實在上篇手記中,有提到v_frienddata變量,其實玩家好友信息就是以JSON格式保存在該變量裡的,我們只需要寫好對應的實體,再利用Json.NET做個轉換就可以了。由於上篇沒有詳細介紹如何使用Json.NET對JSON進行轉換,這裡補充介紹一下。
先來看一下變量中JSON的樹狀結構:
其中,uid為1、2的是系統給玩家添加的默認鄰居。下面是實體類(關於EntityBase實體請參見上篇手記附帶的源碼):
using System;
using System.Collections.Generic;
using System.Text;
namespace SNSHelper.Kaixin001.Entity
{
public class ParkerFriendInfo : EntityBase
{
public ParkerFriendInfo(object obj)
: base(obj)
{
}
public string UId
{
get
{
return jsobj["uid"].ToString();
}
}
public string RealName
{
get
{
return Utility.Unicode2Character(jsobj["real_name"].ToString());
}
}
public string Ta
{
get
{
return Utility.Unicode2Character(jsobj["ta"].ToString());
}
}
public string Full
{
get
{
return jsobj["full"].ToString();
}
}
public string SceneMoney
{
get
{
return jsobj["scenemoney"].ToString();
}
}
public string SceneName
{
get
{
return Utility.Unicode2Character(jsobj["scenename"].ToString());
}
}
public string Neighbor
{
get
{
return jsobj["neighbor"].ToString();
}
}
public string Online
{
get
{
return jsobj["online"].ToString();
}
}
}
}