/// <summary> /// 嘗試自JSON物件轉換為車站資訊物件 /// </summary> /// <param name="json">JSON物件</param> /// <param name="result">車站資訊物件</param> /// <returns>轉換是否成功</returns> internal static bool TryParse(JObject json, Station result) { try { result = Parse(json); return true; } catch { result = null; return false; } }
/// <summary> /// 自JSON物件轉換為車站資訊物件 /// </summary> /// <param name="json">JSON物件</param> /// <returns>車站資訊物件</returns> internal static Station Parse(JObject json) { Station result = new Station(); result.Id = int.Parse("0" + json["Station_Code(4)"].Value<string>()); result.ShortId = int.Parse("0" + json["Station_Code(3)"].Value<string>()); result.Name = json["Station_Name"].Value<string>(); result.EnglishName = json["Station_EName"].Value<string>(); result.Address = json["住址"].Value<string>(); result.EnglishAddress = json["EnglishAddress"].Value<string>(); result.Phone = json["電話"].Value<string>(); if (result.Phone == "無") result.Phone = null; Position position = null; Position.TryParse(json["gps"].Value<string>(),out position); result.Position = position; #region fix 三姓橋 if(result.Name == "三姓橋") { result.Id = 1035; } #endregion return result; }