public static IWebHostBuilder UseServiceFabric(this IWebHostBuilder webHostBuilder) { Console.WriteLine("UseServiceFabric"); if (webHostBuilder == null) { throw new ArgumentNullException(nameof(webHostBuilder)); } IApplicationEnvironment application = PlatformServices.Default.Application; string serviceTypeName = AspNetCoreService.GetServiceTypeName(application); Console.WriteLine("UseServiceFabric - ServiceTypeName: " + serviceTypeName); Console.WriteLine("UseServiceFabric - ServerUrls: " + webHostBuilder.GetSetting(WebHostDefaults.ServerUrlsKey)); if (webHostBuilder.GetSetting(WebHostDefaults.ServerUrlsKey) == null) { string endpointName = webHostBuilder.GetSetting("fabric.endpoint") ?? string.Format("{0}Endpoint", serviceTypeName); var endpoint = FabricRuntime.GetActivationContext().GetEndpoint(endpointName); string url = $"{endpoint.Protocol}://{FabricRuntime.GetNodeContext().IPAddressOrFQDN}:{endpoint.Port}"; Console.WriteLine("UseServiceFabric - Assigning SF Url: " + url); webHostBuilder.UseUrls(url); } return(webHostBuilder); }
public void Start() { Console.WriteLine("ServiceFabricWebHost: Start"); var appEnv = PlatformServices.Default.Application; string serviceTypeName = AspNetCoreService.GetServiceTypeName(appEnv); _fabricRuntime.RegisterStatelessServiceFactory(serviceTypeName, new AspNetCoreServiceFactory(_webHost)); }
public Task StartAsync(CancellationToken cancellationToken = default(CancellationToken)) { Console.WriteLine("ServiceFabricWebHost: StartAsync"); string serviceTypeName = AspNetCoreService.GetServiceTypeName(); _fabricRuntime.RegisterStatelessServiceFactory(serviceTypeName, new AspNetCoreServiceFactory(_webHost)); return(Task.CompletedTask); }