Пример #1
0
        public void ListActivityTypes()
        {
            var clientKey = "wpma9vemz3pfu8tyq3y85va29dx23ff6";
            var accessToken = "321a93d2329879543cb67c47c03e55f3c8e752b9";

            var uri = "https://oauth2-api.mapmyapi.com/v7.0/activity_type/";

            var request = WebRequest.CreateHttp(uri);
            request.Headers.Add("Api-Key",clientKey);
            request.Headers.Add("Authorization", "Bearer " + accessToken);

            var activityTypes = new Dictionary<string, MmfActivityType>();

            using (var response = request.GetResponse())
            using (var responseBody = response.GetResponseStream())
            {
                var reader = new StreamReader(responseBody, Encoding.UTF8);
                var responseString = reader.ReadToEnd();

                var activityTypeResponse = JsonConvert.DeserializeObject<dynamic>(responseString);

                foreach (var activityType in activityTypeResponse._embedded.activity_types)
                {
                    string id = activityType._links.self[0].id;
                    string name = activityType.name;

                    var type = new MmfActivityType
                    {
                        Id = activityType._links.self[0].id,
                        Name = activityType.name,
                        RootId = activityType._links.root[0].id
                    };

                    activityTypes.Add(id, type);
                }

                GetContinuingActivityTypes(activityTypeResponse,activityTypes);
            }

            foreach (var activityType in activityTypes)
            {
                var rootType = activityTypes[activityType.Value.RootId];
                Console.WriteLine("{0}|{1}|{2}", activityType.Value.Id, rootType.Name, activityType.Value.Name);
            }
        }
Пример #2
0
        private static void GetContinuingActivityTypes(dynamic lastResponse, Dictionary<string, MmfActivityType> activityTypes)
        {
            if (lastResponse._links.next != null)
            {
                var clientKey = "wpma9vemz3pfu8tyq3y85va29dx23ff6";
                var accessToken = "321a93d2329879543cb67c47c03e55f3c8e752b9";

                var uri = "https://oauth2-api.mapmyapi.com" + lastResponse._links.next[0].href;
                var request = WebRequest.CreateHttp(uri);
                request.Headers.Add("Api-Key", clientKey);
                request.Headers.Add("Authorization", "Bearer " + accessToken);

                using (var response = request.GetResponse())
                using (var responseBody = response.GetResponseStream())
                {
                    var reader = new StreamReader(responseBody, Encoding.UTF8);
                    var responseString = reader.ReadToEnd();

                    var activityTypeResponse = JsonConvert.DeserializeObject<dynamic>(responseString);

                    foreach (var activityType in activityTypeResponse._embedded.activity_types)
                    {
                        string id = activityType._links.self[0].id;
                        string name = activityType.name;

                        var type = new MmfActivityType
                        {
                            Id = activityType._links.self[0].id,
                            Name = activityType.name,
                            RootId = activityType._links.root[0].id
                        };

                        activityTypes.Add(id, type);
                    }

                    GetContinuingActivityTypes(activityTypeResponse, activityTypes);
                }
            }
        }