public void ConfigureServices(IServiceCollection services) { //#region EndpointConfiguration //var builder = new ConfigurationBuilder().AddCloudFoundry(); //Console.WriteLine("Building the configuration"); //var config = builder.Build(); //Console.WriteLine("Looking for the RabbitMQ URI"); //string uri = config["vcap:services:p-rabbitmq:0:credentials:dashboard_url"]; //Console.WriteLine(uri); //var endpointConfiguration = new EndpointConfiguration("Samples.ASPNETCore.Sender"); //var transport = endpointConfiguration.UseTransport<RabbitMQTransport>(); //transport.UseConventionalRoutingTopology(); //transport.ConnectionString(uri); ////endpointConfiguration.EnableInstallers(); //endpointConfiguration.UsePersistence<InMemoryPersistence>(); //endpointConfiguration.SendOnly(); //#endregion //#region Routing //var routing = transport.Routing(); //routing.RouteToEndpoint( // assembly: typeof(MyMessage).Assembly, // destination: "Samples.ASPNETCore.Endpoint"); //#endregion //#region EndpointStart //Console.WriteLine("Starting endpoint"); //var endpointInstance = Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult(); //Console.WriteLine("Started endpoint"); //#endregion var endpointInstance = NServiceBusConfiguration.Setup(); #region ServiceRegistration Console.WriteLine("Setting IMessageSession"); services.AddSingleton <IMessageSession>(endpointInstance); #endregion services.AddMvc(); }
static async Task MainAsync(string[] args) { try { NServiceBusConfiguration.Setup(); } catch (Exception ex) { Console.WriteLine(ex); } await Task.Delay(-1); }