Пример #1
0
        public async Task <IActionResult> Put(string name, [FromBody] string[] members)
        {
            string proxyUrl = GetProxyUrl(serviceContext, name);

            PowerGrid powerGrid = await CalculatePowerGridAsync(members);

            StringContent putContent = new StringContent(
                JsonConvert.SerializeObject(new Team
            {
                Name      = name,
                Members   = members,
                PowerGrid = powerGrid,
                Score     = powerGrid.CalculateAverageScore()
            }),
                Encoding.UTF8,
                "application/json");

            putContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            using (HttpResponseMessage response = await httpClient.PutAsync(proxyUrl, putContent))
            {
                return(new ContentResult()
                {
                    StatusCode = (int)response.StatusCode,
                    Content = await response.Content.ReadAsStringAsync()
                });
            }
        }
Пример #2
0
        public async Task <IActionResult> Put(string name, [FromBody] string[] members)
        {
            PowerGrid powerGrid = await CalculatePowerGridAsync(members);

            StringContent putContent = new StringContent(
                JsonConvert.SerializeObject(new Team
            {
                Name      = name,
                Members   = members,
                PowerGrid = powerGrid,
                Score     = (powerGrid.Intelligence
                             + powerGrid.Strength
                             + powerGrid.Speed
                             + powerGrid.Durability
                             + powerGrid.EnergyProjection
                             + powerGrid.FightingSkills) / 6
            }),
                Encoding.UTF8,
                "application/json");

            putContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            using (HttpResponseMessage response = await Client.PutAsync($"{teamServiceUrl}/{name}", putContent))
            {
                return(new ContentResult()
                {
                    StatusCode = (int)response.StatusCode,
                    Content = await response.Content.ReadAsStringAsync()
                });
            }
        }