Skip to content

Commit 3a23e5b

Browse files
authored
Merge pull request #4 from jkaddo91/getcountries-perf-improvement
GetCountries performance improvement
2 parents 7347b0c + 689ac48 commit 3a23e5b

11 files changed

Lines changed: 67 additions & 40 deletions

CountryData.Standard.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@
88
<RepositoryUrl>https://github.com/frankodoom/CountryData.Standard</RepositoryUrl>
99
<PackageTags>Xamarin, Country-Api Country-Data Country-Region</PackageTags>
1010
<NeutralLanguage />
11+
<Version>1.0.1</Version>
12+
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
13+
<PackageLicenseExpression>MIT</PackageLicenseExpression>
1114
</PropertyGroup>
1215

1316
<ItemGroup>

CountryHelper.cs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -69,17 +69,8 @@ public List<Regions> GetRegionByCountryCode(string ShortCode)
6969
/// <summary>
7070
/// Gets the list of all countries in the worlld
7171
/// </summary>
72-
/// <returns>List<String> countries</returns>
73-
public List<String> GetCountries()
74-
{
75-
List<String> data = new List<string>();
76-
var countries = _Countries.Select(c => c.CountryName).ToList();
77-
foreach (var item in countries)
78-
{
79-
data.Add(item);
80-
}
81-
return countries;
82-
}
72+
/// <returns>IEnumerable<string> countries</returns>
73+
public IEnumerable<string> GetCountries() => _Countries.Select(c => c.CountryName);
8374

8475
}
8576
}

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# CountryData.Standard
2-
:earth_africa: A simple cross platform offline .NET library for getting Global Country Data
2+
:earth_africa: A simple cross platform offline .NET library for getting Global Country Data without making any HTTP calls.
3+
4+
5+
### Install Library
6+
```cSharp
7+
PM> Install-Package CountryData.Standard -Version 1.0.1
8+
```
39

410

511
### Initialize the Country data object
@@ -53,13 +59,14 @@
5359
### Comming Soon
5460
* Support for more ISO Standard Country Data
5561
* Support for ISO 3166 Country A3 Codes
62+
* Support for Country Phone Code
5663
* Country ShortCode Enums
5764

5865

5966
```
6067
The MIT License
6168
62-
Copyright (c) 2019 Frank Odoom
69+
Copyright (c) 2019 Accede Ltd.
6370
6471
Permission is hereby granted, free of charge, to any person obtaining a copy
6572
of this software and associated documentation files (the "Software"), to deal

azure-pipelines.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Starter pipeline
2+
# Start with a minimal pipeline that you can customize to build and deploy your code.
3+
# Add steps that build, run tests, deploy, and more:
4+
# https://aka.ms/yaml
5+
6+
trigger:
7+
- master
8+
9+
pool:
10+
vmImage: 'ubuntu-latest'
11+
12+
steps:
13+
- task: DotNetCoreCLI@2
14+
inputs:
15+
command: 'restore'
16+
projects: '**/*.csproj'
17+
feedsToUse: 'select'
18+
19+
20+
- task: DotNetCoreCLI@2
21+
displayName: Build
22+
inputs:
23+
command: build
24+
projects: '**/*.csproj'
25+
arguments: '--configuration Release' # Update this to match your need
26+
-100 KB
Binary file not shown.

obj/CountryData.Standard.csproj.nuget.dgspec.json

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,33 @@
11
{
22
"format": 1,
33
"restore": {
4-
"C:\\Users\\u\\Documents\\CountryData.Standard\\CountryData.Standard.csproj": {}
4+
"C:\\Users\\FrankOdoom\\Desktop\\Labs\\open-source\\CountryData.Standard\\CountryData.Standard.csproj": {}
55
},
66
"projects": {
7-
"C:\\Users\\u\\Documents\\CountryData.Standard\\CountryData.Standard.csproj": {
8-
"version": "1.0.0",
7+
"C:\\Users\\FrankOdoom\\Desktop\\Labs\\open-source\\CountryData.Standard\\CountryData.Standard.csproj": {
8+
"version": "1.0.1",
99
"restore": {
10-
"projectUniqueName": "C:\\Users\\u\\Documents\\CountryData.Standard\\CountryData.Standard.csproj",
10+
"projectUniqueName": "C:\\Users\\FrankOdoom\\Desktop\\Labs\\open-source\\CountryData.Standard\\CountryData.Standard.csproj",
1111
"projectName": "CountryData.Standard",
12-
"projectPath": "C:\\Users\\u\\Documents\\CountryData.Standard\\CountryData.Standard.csproj",
13-
"packagesPath": "C:\\Users\\u\\.nuget\\packages\\",
14-
"outputPath": "C:\\Users\\u\\Documents\\CountryData.Standard\\obj\\",
12+
"projectPath": "C:\\Users\\FrankOdoom\\Desktop\\Labs\\open-source\\CountryData.Standard\\CountryData.Standard.csproj",
13+
"packagesPath": "C:\\Users\\FrankOdoom\\.nuget\\packages\\",
14+
"outputPath": "C:\\Users\\FrankOdoom\\Desktop\\Labs\\open-source\\CountryData.Standard\\obj\\",
1515
"projectStyle": "PackageReference",
1616
"fallbackFolders": [
1717
"C:\\Microsoft\\Xamarin\\NuGet\\",
1818
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
1919
],
2020
"configFilePaths": [
21-
"C:\\Users\\u\\AppData\\Roaming\\NuGet\\NuGet.Config",
22-
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 18.2.config",
21+
"C:\\Users\\FrankOdoom\\AppData\\Roaming\\NuGet\\NuGet.Config",
2322
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config",
2423
"C:\\Program Files (x86)\\NuGet\\Config\\Xamarin.Offline.config"
2524
],
2625
"originalTargetFrameworks": [
2726
"netstandard2.0"
2827
],
2928
"sources": {
30-
"C:\\Program Files (x86)\\DevExpress 18.2\\Components\\System\\Components\\Packages": {},
3129
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
32-
"https://accededevteam.pkgs.visualstudio.com/_packaging/DevFeed/nuget/v3/index.json": {},
33-
"https://api.nuget.org/v3/index.json": {},
34-
"https://nuget.devexpress.com/v7aYrEMVJxPS3BWcMo5ijD2svwwknYzijrVJobwGmBBmpVlJq2/api": {}
30+
"https://api.nuget.org/v3/index.json": {}
3531
},
3632
"frameworks": {
3733
"netstandard2.0": {

obj/CountryData.Standard.csproj.nuget.g.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
66
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
77
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
8-
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\u\.nuget\packages\;C:\Microsoft\Xamarin\NuGet\;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
8+
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\FrankOdoom\.nuget\packages\;C:\Microsoft\Xamarin\NuGet\;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
99
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
1010
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">5.3.1</NuGetToolVersion>
1111
</PropertyGroup>

obj/CountryData.Standard.csproj.nuget.g.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
55
</PropertyGroup>
66
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
7-
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets')" />
7+
<Import Project="$(NuGetPackageRoot)netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('$(NuGetPackageRoot)netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets')" />
88
</ImportGroup>
99
</Project>
27 Bytes
Binary file not shown.

obj/Debug/netstandard2.0/CountryData.Standard.csproj.FileListAbsolute.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,11 @@ C:\Users\FrankOdoom\source\repos\Country.Data.Standard\Country.Data.Standard\obj
66
C:\Users\FrankOdoom\source\repos\Country.Data.Standard\Country.Data.Standard\obj\Debug\netstandard2.0\CountryData.Standard.AssemblyInfo.cs
77
C:\Users\FrankOdoom\source\repos\Country.Data.Standard\Country.Data.Standard\obj\Debug\netstandard2.0\CountryData.Standard.dll
88
C:\Users\FrankOdoom\source\repos\Country.Data.Standard\Country.Data.Standard\obj\Debug\netstandard2.0\CountryData.Standard.pdb
9+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\bin\Debug\netstandard2.0\CountryData.Standard.deps.json
10+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\bin\Debug\netstandard2.0\CountryData.Standard.dll
11+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\bin\Debug\netstandard2.0\CountryData.Standard.pdb
12+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\obj\Debug\netstandard2.0\CountryData.Standard.csprojAssemblyReference.cache
13+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\obj\Debug\netstandard2.0\CountryData.Standard.AssemblyInfoInputs.cache
14+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\obj\Debug\netstandard2.0\CountryData.Standard.AssemblyInfo.cs
15+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\obj\Debug\netstandard2.0\CountryData.Standard.dll
16+
C:\Users\FrankOdoom\Desktop\Labs\open-source\CountryData.Standard\obj\Debug\netstandard2.0\CountryData.Standard.pdb

0 commit comments

Comments
 (0)