This toolkit makes it easy to use the Bing Maps Spatial Data Services (SDS) in .NET
Перейти к файлу
Ricky Brundritt 0b858d7b00 Update QueryApiReference.md 2017-05-17 17:50:38 -07:00
Build minor updates 2017-05-17 17:27:04 -07:00
Docs Update QueryApiReference.md 2017-05-17 17:50:38 -07:00
Samples minor updates 2017-05-17 17:27:04 -07:00
Source minor updates 2017-05-17 17:27:04 -07:00
.gitignore Update folder structure 2017-05-15 17:48:06 -07:00
BingMapsSDSToolkit.sln update documentation 2017-05-16 16:44:15 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md 2017-05-16 17:06:37 -07:00
LICENSE Initial commit 2017-05-15 14:18:01 -07:00
README.md Update README.md 2017-05-16 16:47:36 -07:00

README.md

Bing Maps Logo

NuGet license

Bing Maps Spatial Data Services (SDS) Toolkit for .NET

This is a portable .NET class library which provides a set of tools that make it easy to access the Bing Maps Spatial Data Services in .NET based apps. The Bing Maps Spatial Data Services provides the following key functionalities:

  • Batch forward and reverse Geocoding of up to 200,000 rows of data in a single request.
  • Spatial data hosting and services: Upload a two dimensional table of data as a data source and expose it as a spatial REST service.
    • Perform spatial queries against data sources using:
      • Find Nearby (radial)
      • Find in bounding box
      • Find by Property
      • Find along a route
      • Intersection search (i.e. search within a custom shape.)
  • Public Data sources: Access public data sources that contain information such as points of interest and census data.
  • Boundary Data: Access to administrative boundary data via the Geodata API. Boundary data types available vary from country to country. Supported boundary types; zip/postal codes, neighborhoods, cities, counties, states/provinces, countries, and continents.

See the documentation for more information on how to use this library. This toolkit is based on the documentation for the Bing Maps Spatial Data Services.

If you are working with the Bing Maps REST services which provides; on-demand forward and reverse geocoding, routing, static imagery, traffic and elevation data, take a look at the Bing Maps REST Toolkit.

Dependancy: Microsoft.Bcl.Compression

NuGet Package

The Bing Maps Spatial Data Services Toolkit is available as a NuGet package. If using Visual Studio, open the nuget package manager, select the Browse tab and search for "Bing Maps SDS". This should reduce the list of results enough to find the "BingMapsSDSToolkit" package. The owner of the package is bingmaps and the author is Microsoft.

Alternatively, if you are using the nuget command line:

PM> Install-Package BingMapsSDSToolkit

Supported Platforms

  • .NET Framework 4.5+
  • ASP.NET Core 1.0
  • Universal Windows Platform (UWP)
  • Windows 10
  • Windows 8.1
  • Windows 8
  • Windows Phone 10
  • Windows Phone 8.1
  • Xamarin.Android
  • Xamarin.iOS
  • Xamarin.iOS (Classic)

Features

Data Source API:

  • Can read compressed file streams.
  • Automatically compresses data before uploading.
  • Supports uploading of delimited (pipe, tab, comma), XML (as per SDS schema), KML, KMZ and SHP files.
  • Local Data Source validation. Reduces the number of invalid data sources that are uploaded, thus reduce the number of wasted SDS jobs that are created.
  • Better support for delimited files.
    • Schema text not required.
    • Handles quoted column header values.
    • Handles extra delimiters in schema text line.
  • Wraps 99% of functionalities (no support for downloading the data schema of a data source as it isn't needed by this library).

Geocode Data Flow API:

  • Forward and reverse geocode up to 200,000 entities in a single request.
  • Combines like addresses are combined as a single request. This allows rows with the same addresses to only create a single row in the geocode process. This helps to maximize the 1M free batch geocode limit.

Geodata API:

  • Search for boundary data such as zip/postal codes, neighborhoods, cities, counties, states/provinces, countries, and continents.
  • Provides compression tools for handling the encoded polygon data,

Query API:

  • Classes for easily creating queries for a data source.
  • Parses response from any data source into a common QueryResult object.
  • Support for multiple distance units (km, miles, feet, meters, yards)
  • Support for filters.
  • Handles encoding filter values, and escapes single quotes by using the OData convention of using two single quotes side by side.

Contributing

We welcome contributions. Feel free to file issues and pull requests on the repo and we'll address them as we can. Learn more about how you can help on our Contribution Rules & Guidelines.

You can reach out to us anytime with questions and suggestions using our communities below:

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

TODO List

The following is a list of tasks or ideas to do on this project.

  • Add support for XLSX.
  • Get culture for geocoding from country property
  • Option to download existing data source when geocoding, pull coordinates of already geocoded rows if address and id have not changed.

License

MIT

See License for full license text.

Additional Resources