Azure Maps for .NET
Build .NET location features for search, routing, maps, geolocation, and weather.
The document exposes subscription-key, Microsoft Entra ID, and SAS authentication paths, and recommends Entra ID for production; there is no evidence of credential theft, covert exfiltration, or destructive defaults. Points are deducted because least privilege, sensitive location/IP data handling, user confirmation, data-flow disclosure, rollback, and request scoping are not specified, and the SAS example permits a relatively high rate limit.
Installation, authentication, major APIs, error handling, and rate-limit guidance are covered, including several HTTP failure statuses. Points are deducted because the material is static examples only, with no skill-specific tests or reproducible build evidence; prerelease dependencies and version drift reduce stability, and missing subscription-key handling is incomplete.
The audience, .NET context, trigger terms, and major capabilities are reasonably clear across search, routing, rendering, geolocation, and weather. Points are deducted because non-fit boundaries, input/output contracts, and exclusion triggers are not defined, there is no Chinese-language guidance, and Azure Maps network, regional, and service availability must be checked by the user.
The skill provides installation, environment variables, authentication, topic-based examples, type references, best practices, error handling, related SDKs, and reference links; MIT licensing is declared at skill and repository level. Points are deducted for prerelease dependencies, absent skill-level changelog, unclear maintenance ownership/update path, and limited disclosure of preview stability, quotas, pricing, and service constraints.
It offers broad, directly relevant code patterns and client/API mappings for common Azure Maps .NET tasks. Under static calibration, 7 is the ceiling; points are deducted because nothing was executed, and compatibility with the specified beta versions, compilability, and completeness of returned results remain unverified.
Package versions and links to Microsoft Learn, the Azure SDK source, and pricing provide useful audit trails; the repository also contains general CI, evaluation, and test materials. Points are deducted because no evidence shows skill-specific test coverage, and this review did not execute or independently cross-check the examples, so the static evidence ceiling applies.
- The examples depend on multiple prerelease Azure Maps packages; pin and verify the actual API versions before use.
- Do not place subscription keys or SAS tokens in source code; constrain credential permissions, lifetime, rate, and resource scope, and assess location/IP data privacy and compliance.
- Azure service access may be affected by region, network, and quotas; for mainland-China users, verify endpoint reachability and target-region availability first.
What it does & when to use it
This skill is for developers and coding agents working with the Azure Maps SDK for .NET. It covers geocoding, reverse geocoding, routing, route matrices, reachable ranges, map tiles, IP geolocation, and weather queries. It also documents NuGet installation and subscription-key, Microsoft Entra, and SAS authentication patterns. The repository is under active development, while this profile covers only the azure-maps-search-dotnet skill.
Guides an agent in producing or changing C# code and dotnet installation commands for Azure Maps Search, Routing, Rendering, Geolocation, Weather, and Resource Manager clients. The examples read subscription keys or client IDs from environment variables, create credentials and clients, and produce coordinates, formatted addresses, boundary polygons, route distances and durations, route matrices, map tiles, country or region codes, and weather results. It also covers batch operations, traffic data, caching, rate-limit handling, and RequestFailedException responses.
- A .NET developer needs to geocode addresses or reverse-geocode coordinates into formatted addresses.
- A mobility or logistics team needs directions, route matrices, or reachable-range polygons for different travel modes.
- A mapping application needs map tiles, static map images, or copyright information.
- An application needs IP-based country or region lookup or current weather, forecasts, and severe-weather alerts.
Pros & cons
- Covers Search, Routing, Rendering, Geolocation, Weather, and Maps Resource Manager clients.
- Provides subscription-key, Microsoft Entra, and SAS authentication examples.
- Includes practical patterns for batch geocoding, asynchronous route matrices, traffic data, and rate limits.
- Contains copyable C# workflows, a client hierarchy, and key type references.
- The documented SDK versions are beta or prerelease, so API and stability risks remain.
- The examples require Azure resources and credentials; the source does not document provisioning steps or specific costs.
- The source does not provide independent test results or platform coverage for this individual skill.
- It is development guidance for coding agents, not a ready-made map application or standalone service.
How to install
Install the repository collection as described in the README with npx skills add microsoft/skills, then select the needed skill in the wizard. Skills are installed into the selected agent directory, such as .github/skills/ for GitHub Copilot. The README does not document a command that installs only azure-maps-search-dotnet. Install the .NET packages with the dotnet add package commands listed in the skill, using --prerelease as shown.
How to use
With the skill loaded in a coding agent, make a concrete request such as: Add Azure Maps address geocoding to my C# application using DefaultAzureCredential. The agent can then generate MapsSearchClient, MapsRoutingClient, or related client code with queries, configuration, and error handling based on the skill.