Ejemplo n.º 1
0
    private string CreateMajorRoutes(string locationString)
    {
        string results = "";
        string key = "ArLeGdHOcc5h7j3L4W37oFGcU9E-LF3tAZi4o0DfhXbPJ8aiyTGbIDNHex08R2u7";
        MajorRoutesRequest majorRoutesRequest = new MajorRoutesRequest();

        // Set the credentials using a valid Bing Maps key
        majorRoutesRequest.Credentials = new RouteService.Credentials();
        majorRoutesRequest.Credentials.ApplicationId = key;

        // Set the destination of the routes from major roads
        Waypoint endPoint = new Waypoint();
        endPoint.Location = new RouteService.Location();
        string[] digits = locationString.Split(',');
        endPoint.Location.Latitude = double.Parse(digits[0].Trim());
        endPoint.Location.Longitude = double.Parse(digits[1].Trim());
        endPoint.Description = "Location";

        // Set the option to return full routes with directions
        MajorRoutesOptions options = new MajorRoutesOptions();
        options.ReturnRoutes = true;

        majorRoutesRequest.Destination = endPoint;
        majorRoutesRequest.Options = options;

        // Make the route-from-major-roads request
        RouteServiceClient routeService = new RouteServiceClient("BasicHttpBinding_IRouteService");

        // The result is an MajorRoutesResponse Object
        MajorRoutesResponse majorRoutesResponse = routeService.CalculateRoutesFromMajorRoads(majorRoutesRequest);

        Regex regex = new Regex("<[/a-zA-Z:]*>",
          RegexOptions.IgnoreCase | RegexOptions.Multiline);

        if (majorRoutesResponse.StartingPoints.Length > 0)
        {
            StringBuilder directions = new StringBuilder();

            for (int i = 0; i < majorRoutesResponse.StartingPoints.Length; i++)
            {
                directions.Append(String.Format("Coming from {1}\n", i + 1,
                    majorRoutesResponse.StartingPoints[i].Description));

                for (int j = 0;
                  j < majorRoutesResponse.Routes[i].Legs[0].Itinerary.Length; j++)
                {
                    //Strip tags
                    string step = regex.Replace(
                      majorRoutesResponse.Routes[i].Legs[0].Itinerary[j].Text, string.Empty);
                    directions.Append(String.Format("     {0}. {1}\n", j + 1, step));
                }
            }

            results = directions.ToString();
        }
        else
            results = "No Routes found";

        return results;
    }
Ejemplo n.º 2
0
        public MajorRoutesResponse CalculateRoutesFromMajorRoads([System.Xml.Serialization.XmlElementAttribute(IsNullable = true)] MajorRoutesRequest request)
        {
            object[] results = this.Invoke("CalculateRoutesFromMajorRoads", new object[] {
                request
            });

            return((MajorRoutesResponse)(results[0]));
        }
Ejemplo n.º 3
0
 public void CalculateRoutesFromMajorRoadsAsync(MajorRoutesRequest request, object userState)
 {
     if ((this.CalculateRoutesFromMajorRoadsOperationCompleted == null))
     {
         this.CalculateRoutesFromMajorRoadsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCalculateRoutesFromMajorRoadsCompleted);
     }
     this.InvokeAsync("CalculateRoutesFromMajorRoads", new object[] {
         request
     }, this.CalculateRoutesFromMajorRoadsOperationCompleted, userState);
 }
Ejemplo n.º 4
0
 public System.IAsyncResult BeginCalculateRoutesFromMajorRoads(MajorRoutesRequest request, System.AsyncCallback callback, object asyncState)
 {
     return(this.BeginInvoke("CalculateRoutesFromMajorRoads", new object[] {
         request
     }, callback, asyncState));
 }
Ejemplo n.º 5
0
 public void CalculateRoutesFromMajorRoadsAsync(MajorRoutesRequest request)
 {
     this.CalculateRoutesFromMajorRoadsAsync(request, null);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Not implemented.
 /// </summary>
 /// <param name="request">The parameter is not used.</param>
 /// <returns>Throws an exception.</returns>
 /// <seealso cref="IRouteService.CalculateRoutesFromMajorRoadsAsync"/>
 public Task<MajorRoutesResponse> CalculateRoutesFromMajorRoadsAsync(MajorRoutesRequest request)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Not implemented.
 /// </summary>
 /// <param name="request">The parameter is not used.</param>
 /// <returns>Throws an exception.</returns>
 /// <seealso cref="IRouteService.CalculateRoutesFromMajorRoads"/>
 public MajorRoutesResponse CalculateRoutesFromMajorRoads(MajorRoutesRequest request)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 8
0
    private string CreateMajorRoutes(string locationString)
    {
        string             results            = "";
        string             key                = "ArLeGdHOcc5h7j3L4W37oFGcU9E-LF3tAZi4o0DfhXbPJ8aiyTGbIDNHex08R2u7";
        MajorRoutesRequest majorRoutesRequest = new MajorRoutesRequest();

        // Set the credentials using a valid Bing Maps key
        majorRoutesRequest.Credentials = new RouteService.Credentials();
        majorRoutesRequest.Credentials.ApplicationId = key;

        // Set the destination of the routes from major roads
        Waypoint endPoint = new Waypoint();

        endPoint.Location = new RouteService.Location();
        string[] digits = locationString.Split(',');
        endPoint.Location.Latitude  = double.Parse(digits[0].Trim());
        endPoint.Location.Longitude = double.Parse(digits[1].Trim());
        endPoint.Description        = "Location";

        // Set the option to return full routes with directions
        MajorRoutesOptions options = new MajorRoutesOptions();

        options.ReturnRoutes = true;

        majorRoutesRequest.Destination = endPoint;
        majorRoutesRequest.Options     = options;

        // Make the route-from-major-roads request
        RouteServiceClient routeService = new RouteServiceClient("BasicHttpBinding_IRouteService");

        // The result is an MajorRoutesResponse Object
        MajorRoutesResponse majorRoutesResponse = routeService.CalculateRoutesFromMajorRoads(majorRoutesRequest);

        Regex regex = new Regex("<[/a-zA-Z:]*>",
                                RegexOptions.IgnoreCase | RegexOptions.Multiline);

        if (majorRoutesResponse.StartingPoints.Length > 0)
        {
            StringBuilder directions = new StringBuilder();

            for (int i = 0; i < majorRoutesResponse.StartingPoints.Length; i++)
            {
                directions.Append(String.Format("Coming from {1}\n", i + 1,
                                                majorRoutesResponse.StartingPoints[i].Description));

                for (int j = 0;
                     j < majorRoutesResponse.Routes[i].Legs[0].Itinerary.Length; j++)
                {
                    //Strip tags
                    string step = regex.Replace(
                        majorRoutesResponse.Routes[i].Legs[0].Itinerary[j].Text, string.Empty);
                    directions.Append(String.Format("     {0}. {1}\n", j + 1, step));
                }
            }

            results = directions.ToString();
        }
        else
        {
            results = "No Routes found";
        }

        return(results);
    }