CivicAddressResolver always returning UnKnown

I am trying to get country name based on GeoCoordinate using System.Device.Location namespace. Following is the code which I tried

 GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.Default);
        watcher.MovementThreshold = 1.0; // set to one meter

        CivicAddressResolver resolver = new CivicAddressResolver();

        for (int k = 0; k < 100; k++)

        {

            watcher.TryStart(false, TimeSpan.FromMilliseconds(2000));
            GeoCoordinate coord = watcher.Position.Location;

            Console.WriteLine("Temp " + k + ", status: " + watcher.Status.ToString());

            if (coord.IsUnknown != true)
            {
                CivicAddress address = resolver.ResolveAddress(watcher.Position.Location);


                Console.WriteLine("Lat: {0}, Long: {1}",
                    coord.Latitude,
                    coord.Longitude);
                Console.WriteLine("Country ",address.CountryRegion);

            }
            else
            {
                Console.WriteLine("Unknown latitude and longitude.");
            }
        }

Using this code,I am able to get latitude and longitude successfully, but address is always unknown.Even i tried some latitude and longitudes. I am using .NET Framework 4.7.2.

Please help me to resolve this issue. Thanks in Advance