Skip to main content

Peter Marshall

Call Service Fabric endpoint internally

1 min read

        private async Task CallServiceAsync()
        {
            string schedulerServiceName = "fabric:/DataServices/Scheduler";
            var resolver = ServicePartitionResolver.GetDefault();
            var partition = await resolver.ResolveAsync(new Uri(schedulerServiceName), ServicePartitionKey.Singleton, CancellationToken.None);
            var endpoints = JObject.Parse(partition.GetEndpoint().Address)["Endpoints"];
            var endpoint = endpoints[""].ToString().TrimEnd('/');
            string method = "/api/scheduler/classes/sync";
            var client = new HttpClient();
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            var getTask = client.GetAsync(endpoint + method);
            var msg = await getTask;
        }