コード例 #1
0
ファイル: Finder.cs プロジェクト: geoiq/GeoIQ4Net
        void request_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
        {
            SearchEventArgs args = new SearchEventArgs();

            if (e.Error == null)
            {
                string s = e.Result;
                DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(GeoIQ.Net.Data.Overlays));
                byte[] bytes = Encoding.ASCII.GetBytes(s);
                System.IO.MemoryStream stream = new System.IO.MemoryStream(bytes);
                GeoIQ.Net.Data.Overlays overlays = (GeoIQ.Net.Data.Overlays)serializer.ReadObject(stream);
                args._result = overlays;
            }
            else
            {
                args._error = e.Error;
            }
            if (this.AsynchSearchComplete != null)
                AsynchSearchComplete(args);
        }
コード例 #2
0
ファイル: Finder.cs プロジェクト: geoiq/GeoIQ4Net
        public SearchEventArgs ExecuteSearch(int limit, string terms, string model)
        {
            SearchEventArgs args = new SearchEventArgs();
            try
            {
                WebClient request = new WebClient();
                string url = String.Format("{0}/search.json?query={1}&limit={2}&model={3}", EndpointURI, terms, limit, model);
                setCredentials(request);

                Stream stream = request.OpenRead(url);
                DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(GeoIQ.Net.Data.Overlays));

                GeoIQ.Net.Data.Overlays overlays = (GeoIQ.Net.Data.Overlays)serializer.ReadObject(stream);
                args._result = overlays;
            }
            catch (Exception ex)
            {
                args._error = ex;
            }
            return args;
        }