/// <summary> /// 根据关键字获取公交站点 /// </summary> /// <param name="key">根据关键字查询公交站点</param> /// <param name="callback">结果处理函数</param> /// <param name="spliter">站点分隔符</param> /// <param name="maxNum">最大结果数</param> void GetBusStopName(string key, UploadStringCompletedEventHandler callback, string spliter = "$", int maxNum = 8) { key = CommFun.Escape(key.Trim()); string svrUrl = ServerAddress + "?svcType=SDS&_method=GetBusStop"; string data = "_method=GetBusStop&key=" + key + "&spliter=" + spliter + "&encode=0&num=" + maxNum; WebClient cli = new WebClient(); cli.Encoding = Encoding.UTF8; cli.Headers[HttpRequestHeader.ContentType] = "type=text/xml;charset=utf-8"; cli.Headers[HttpRequestHeader.ContentEncoding] = "utf-8"; cli.UploadStringCompleted += callback; cli.UploadStringAsync(new Uri(svrUrl), data); }
/// <summary> /// 获取公交换乘方案 /// </summary> /// <param name="startStop">起始站点</param> /// <param name="endStop">结束站点</param> /// <param name="callback">结果处理函数</param> /// <param name="returnXml">是否以XML形式返回结果</param> void GetBusChangeRlt(string startStop, string endStop, UploadStringCompletedEventHandler callback, bool returnXml = false) { startStop = CommFun.Escape(startStop.Trim()); endStop = CommFun.Escape(endStop.Trim()); String returnType = returnXml ? "0" : "1"; string svrUrl = ServerAddress + "?svcType=SDS&_method=GetBusWay"; string data = "_method=GetBusWay&staPos=" + startStop + "&endPos=" + endStop + "&encode=0&outputType=" + returnType; WebClient cli = new WebClient(); cli.Encoding = Encoding.UTF8; cli.Headers[HttpRequestHeader.ContentType] = "type=text/xml;charset=utf-8"; cli.Headers[HttpRequestHeader.ContentEncoding] = "utf-8"; cli.UploadStringCompleted += callback; cli.UploadStringAsync(new Uri(svrUrl), data); }