private static List <string> MultiPolygonObjectToEsriJson(MultiPolygonGeoJson multi)
        {
            List <string> esriJsonList = new List <string>();

            foreach (List <List <List <double> > > poly in multi.coordinates)
            {
                // Convert the individual polygons within multipolygon
                var newPoly = new PolygonGeoJson {
                    type = "Polygon", coordinates = poly
                };

                // check coordinates to make sure they match ESRI requirement for outer vs inner rings
                var convertedPoly         = ConvertGeoJsonCoordsToEsriCoords(newPoly);
                var esriPolygonJsonObject = new EsriPolygonJsonObject
                {
                    spatialReference = new SpatialReference(4326),
                    rings            = convertedPoly.coordinates
                };
                var esriJson = JsonConvert.SerializeObject(esriPolygonJsonObject);
                if (!string.IsNullOrEmpty(esriJson))
                {
                    esriJsonList.Add(esriJson);
                }
            }
            return(esriJsonList);
        }
        private static string GeojsonToEsriJson(PolygonGeoJson poly)
        {
            var convertedPoly = ConvertGeoJsonCoordsToEsriCoords(poly);

            var esriJsonObject = new EsriPolygonJsonObject
            {
                spatialReference = new SpatialReference(4326),
                rings            = convertedPoly.coordinates
            };

            var outputString = JsonConvert.SerializeObject(esriJsonObject);

            return(outputString);
        }
        private static List<string> MultiPolygonObjectToEsriJson(MultiPolygonGeoJson multi)
        {
            List<string> esriJsonList = new List<string>();
            foreach (List<List<List<double>>> poly in multi.coordinates)
            {
                // Convert the individual polygons within multipolygon
                var newPoly = new PolygonGeoJson { type = "Polygon", coordinates = poly };

                // check coordinates to make sure they match ESRI requirement for outer vs inner rings
                var convertedPoly = ConvertGeoJsonCoordsToEsriCoords(newPoly);
                var esriPolygonJsonObject = new EsriPolygonJsonObject
                                                {
                                                    spatialReference = new SpatialReference(4326),
                                                    rings = convertedPoly.coordinates
                                                };
                var esriJson = JsonConvert.SerializeObject(esriPolygonJsonObject);
                if (!string.IsNullOrEmpty(esriJson))
                {
                    esriJsonList.Add(esriJson);
                }
            }
            return esriJsonList;
        }
        private static string GeojsonToEsriJson(PolygonGeoJson poly)
        {
            var convertedPoly = ConvertGeoJsonCoordsToEsriCoords(poly);

            var esriJsonObject = new EsriPolygonJsonObject
                                     {
                                         spatialReference = new SpatialReference(4326),
                                         rings = convertedPoly.coordinates
                                     };

            var outputString = JsonConvert.SerializeObject(esriJsonObject);

            return outputString;
        }