- SieraDeltaGeoIp.Plugin
SieraDeltaGeoIp.Plugin
Assembly: SieraDeltaGeoIp.Plugin
Description
SieraDelta GeoIp plugin module provides access to GeoIp data from a custom, self hosted data source using the following databases:
GeoIp
SieraDelta GeoIp is mutually exclusive with the GeoIp.Plugin module, you can not use both. Both implement the IGeoIpDataService interface.
Settings
Settings to select the provider and individual provider settings are available using the GeoIpPluginSettings class.
How it Works
SieraDelta works slightly differently from the GeoIp.Plugin module, as data is stored within a local database you can choose to load all data into memory when the site is initialised, or alternatively you can load a select list of individual, most commonly used countries. You can of course choose to query the database for each request so it fits within the needs of individual sites.
How to use
SieraDelta GeoIp plugin will be loaded by the plugin manager if it is used, otherwise you can manually add the GeoIp service as follows:
services.UseSieraDeltaGeoIpService();
Useage
if (LoadGeoIpService() && _geoIpInstance.GetIPAddressDetails(e.IPAddress, out string countryCode, out string region, out string cityName, out decimal latitude, out decimal longitude, out long ipUniqueId)) { e.IPUniqueID = ipUniqueId; e.Latitude = latitude; e.Longitude = longitude; e.CityName = cityName; e.CountryCode = countryCode; e.Region = region; } else { e.CountryCode = "ZZ"; e.CityName = "Unknown"; e.Region = String.Empty; e.Latitude = 0; e.Longitude = 0; }