Nahtlose Google API-Integrationen.
Google Maps, Orte, Straßen, Suchen und Übersetzen.
Fühlen Sie sich frei, einen Beitrag zu leisten, Fragen zu stellen und Probleme zu melden. Normalerweise antworte ich schnell (24–48 Stunden).
Benötigen Sie Unterstützung für ein zusätzliches .Net-Framework? Lassen Sie es mich wissen.
Neu: Version 5.0.0 mit Routes Api (Wegbeschreibung und Matrix), Ariel View Api und Address Validation Api.
Die Bibliothek kann entweder durch die Verwendung der einzelnen Facede-Implementierungen oder durch Abhängigkeitsinjektion der einzelnen APIs genutzt werden.
Jede API-Implementierung besteht aus einer Anfrage und einer Antwort. Die Anforderung verfügt über Eigenschaften, die die unterstützten Parameter widerspiegeln, und die Antwort stellt das Objektmodell für den zurückgegebenen JSON dar.
Ein paar andere bemerkenswerte Mitglieder.
var uri = request . GetUri ( ) ; // Gets the full request uri, including query parameters.
var params = request . GetQUeryStringParameters ( ) ; // Gets a list of all the added parameters.
response . RawJson // The raw json returned by Google.
response . RawQueryString // The querystring sent to Google when invoking the request.
Jede API verfügt über eine generische Fassadenoperation, um die Anfrage auszuführen und die Antwort zurückzugeben.
Das folgende Beispiel füllt einfach eine Anfrage aus, ruft den Fassadenvorgang auf und erhält im Gegenzug die Antwort.
TRequest request = new TRequest ( ) ;
TResponse response = await { Api } . [ { SubGroup } ] . { Action } . QueryAsync < TRequest , TResponse > ( request ) ;
Unten finden Sie eine vollständige Liste der unterstützten APIs und Aktionen.
Wenn das Einfügen der APIs als Abhängigkeiten bevorzugt wird, registrieren Sie die Dienste beim Start, wie unten gezeigt.
services
. AddGoogleApiClients ( ) ;
Fügen Sie dann nach Bedarf die einzelnen APIs in Konstruktoren ein
public class MyClass
{
private Api api ;
public MyClass ( Api api )
{
this . api = api
}
}
Unten finden Sie eine vollständige Liste der unterstützten APIs und Aktionen.
Wenn ein WebProxy
erforderlich ist, legen Sie die statische Eigenschaft HttpClientFactory.Proxy
fest, bevor Sie die GoogleApi-Abhängigkeiten registrieren oder die Facade verwenden.
Die folgenden APIs werden unterstützt.
GoogleMaps.Directions
)GoogleMaps.DistanceMatrix
)GoogleMaps.Elevation
)GoogleMaps.Geocode.PlaceGeocode
)GoogleMaps.Geocode.AddressGeocode
)GoogleMaps.Geocode.LocationGeocode
)GoogleMaps.Geocode.PlusCodeGeocode
)GoogleMaps.Geolocation
)GoogleMaps.Roads.NearestRoads
)GoogleMaps.Roads.SnapToRoad
)GoogleMaps.Roads.SpeedLimits
)GoogleMaps.Routes.Directions
)GoogleMaps.Routes.Matrix
)GoogleMaps.AddressValidation
)GoogleMaps.AerialView.GetVideo
)GoogleMaps.AerialView.RenderVideo
) GooglePlaces.Search.FindSearch
)GooglePlaces.Search.NearBySearch
)GooglePlaces.Search.TextSearch
)GooglePlaces.Details
)GooglePlaces.Photos
)GooglePlaces.AutoComplete
)GooglePlaces.QueryAutoComplete
) GoogleSearch.WebSearch
)GoogleSearch.ImageSearch
)GoogleSearch.VideoSearch.Channels
)GoogleSearch.VideoSearch.Playlists
)GoogleSearch.VideoSearch.Vidoes
) GoogleTranslate.Detect
)GoogleTranslate.Languages
)GoogleTranslate.Translate
) Das Ausführen der Testsuite ist einfach.
Das Testprojekt speichert Einstellungen im Zusammenhang mit Ihrem Google-Abonnement (kostenlos oder kostenpflichtig) in application.default.json
.
Am wichtigsten ist der ApiKey
, der zur Identifizierung des Google-Abonnements verwendet wird.
{
"ApiKey" : " " ,
"SearchEngineId" : " " ,
}
Weitere Informationen zum Generieren eines Schlüssels finden Sie hier: https://console.developers.google.com/