public static async Task<bool> CheckRecommendedVersion(this IAppConfigurationService configurationService, bool retrieveCached = false, string recommVerKey = Constants.AppConfigurationRecommVersionKey)
{
if (configurationService == null) return false;
configurationService.Mapper.EnsurePresence(recommVerKey);
var appConfig = await configurationService.LoadAppConfig(retrieveCached);
var recommVersionMappedValue = appConfig?.GetValueForKey<string>(recommVerKey);
var appVerFromPlatform = configurationService.VersionService?.GetVersion();
if (appVerFromPlatform == null || recommVersionMappedValue == null)
{
return false;
}
Version versionToCheck;
return !Version.TryParse(recommVersionMappedValue, out versionToCheck) || versionToCheck <= appVerFromPlatform;
}