Как использовать шину событий MassTransit в веб-API ASP.NET Core?C#

Место общения программистов C#
Anonymous
Как использовать шину событий MassTransit в веб-API ASP.NET Core?

Сообщение Anonymous »

После настройки MassTransit согласно инструкции через https://masstransit-project.com/usage/c ... ation.html

как вы используете (pub/sub) его в
  • контроллере веб-API ASP.NET Core?
  • в службе интерфейса?


namespace App1.Message.API
{
public class Startup
{
.....
private IContainer container { get; set; }

public IServiceProvider ConfigureServices(IServiceCollection services)
{
......
var builder = new ContainerBuilder();
builder.Register(c =>
{
return Bus.Factory.CreateUsingRabbitMq(sbc =>
sbc.Host("localhost", "/", h =>
{
h.Username("guest");
h.Password("guest");
})
);
})
.As()
.As()
.As()
.SingleInstance();
builder.Populate(services);
container = builder.Build();
return new AutofacServiceProvider(container);
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, IApplicationLifetime lifetime)
{
......
//resolve the bus from the container
var bus = container.Resolve();
//start the bus
var busHandle = TaskUtil.Await(() => bus.StartAsync());

//register an action to call when the application is shutting down
lifetime.ApplicationStopping.Register(() => busHandle.Stop());
}
}
}

Вернуться в «C#»