I'm not looking to do anything super fancy: just want to display the map and highlight the location corresponding to the latitude, longitude of the current user. Which API is suitable for this?
PS: any examples if available would be awesome :)
Videos
Yes it is http://www.openstreetmap.org/
but I have not used is until yet
http://wiki.openstreetmap.org/wiki/API
What you're trying to do is perform a geocode operation over a maps platform. There is currently no free platform that would allow to do so in an internal application.
There are several platforms that will allow you to use it in your internal application with dedicated licensing model and with adapted restrictions:
- Bing Maps for Enterprise: has known users or transaction based licensing models as well as a WPF Control: http://www.microsoft.com/maps/product/terms.html
- Here Platform (from Nokia): has known users model: http://developer.here.com/plans
Google does not provide a known user for internal application out of the licensing of the JavaScript API that might not be the best option to integrate in your WPF control (without using WebBrowser control and interop code).
OpenStreetMap also had limitations regarding the Licence that applies which was Share-A-Like, now it's ODBL and you should be able to use this project but the license only apply to the database, not the service that might be exposed (hosted) by tiers company. You might be interested in CloudMade offers.