in sample/ProduceAndConsume/Program.cs [14:57]
static void Main(string[] args)
{
IHostBuilder hostBuilder = Host.CreateDefaultBuilder(args);
hostBuilder.ConfigureServices(services =>
{
KafkaBuilder kafkaBuilder = services.AddKafka();
// use mock cluster for demo purposes only, NOT for production!
kafkaBuilder.WithTestMockCluster("Sandbox");
// optionally append or override cluster settings configured in appsettings.json
kafkaBuilder.WithClusterConfig("Sandbox").Configure(x =>
{
x.ClientConfig.AllowAutoCreateTopics = true;
x.SchemaRegistryConfig.Url = "http://localhost:8080";
});
// optionally append or override consumer settings configured in appsettings.json
kafkaBuilder.WithConsumerConfig("c1").Configure(x =>
{
x.ConsumerConfig.GroupId = "test1";
});
// optionally append or override producer settings configured in appsettings.json
kafkaBuilder.WithProducerConfig("p1").Configure(x =>
{
x.ProducerConfig.EnableDeliveryReports = true;
});
// optionally configure default names for producer, consumer, and cluster configs
// so that you don't need to provide their names to IKafkaFactory methods
kafkaBuilder.WithDefaults(x =>
{
x.Producer = "p1";
x.Consumer = "c1";
x.Cluster = "Sandbox";
});
services.AddHostedService<ProduceSample>();
services.AddHostedService<ConsumeSample>();
}).Build().Run();
}