@@ -31,7 +31,7 @@ internal class Consumer : IDisposable
3131 private ILogger _logger ;
3232 private IConsumer < string , byte [ ] > _consumer ;
3333 private bool _isListening ;
34- private DBContext ? _dbContext ;
34+ private readonly string ? _dbConnectionString ;
3535 private static readonly ActivitySource MyActivitySource = new ( "Accounting.Consumer" ) ;
3636
3737 public Consumer ( ILogger < Consumer > logger )
@@ -49,7 +49,7 @@ public Consumer(ILogger<Consumer> logger)
4949 _logger . LogInformation ( "Connecting to Kafka: {servers}" , servers ) ;
5050 }
5151
52- _dbContext = Environment . GetEnvironmentVariable ( "DB_CONNECTION_STRING" ) == null ? null : new DBContext ( ) ;
52+ _dbConnectionString = Environment . GetEnvironmentVariable ( "DB_CONNECTION_STRING" ) ;
5353 }
5454
5555 public void StartListening ( )
@@ -90,16 +90,17 @@ private void ProcessMessage(Message<string, byte[]> message)
9090 var order = OrderResult . Parser . ParseFrom ( message . Value ) ;
9191 Log . OrderReceivedMessage ( _logger , order ) ;
9292
93- if ( _dbContext == null )
93+ if ( _dbConnectionString == null )
9494 {
9595 return ;
9696 }
9797
98+ using var dbContext = new DBContext ( ) ;
9899 var orderEntity = new OrderEntity
99100 {
100101 Id = order . OrderId
101102 } ;
102- _dbContext . Add ( orderEntity ) ;
103+ dbContext . Add ( orderEntity ) ;
103104 foreach ( var item in order . Items )
104105 {
105106 var orderItem = new OrderItemEntity
@@ -112,7 +113,7 @@ private void ProcessMessage(Message<string, byte[]> message)
112113 OrderId = order . OrderId
113114 } ;
114115
115- _dbContext . Add ( orderItem ) ;
116+ dbContext . Add ( orderItem ) ;
116117 }
117118
118119 var shipping = new ShippingEntity
@@ -128,8 +129,8 @@ private void ProcessMessage(Message<string, byte[]> message)
128129 ZipCode = order . ShippingAddress . ZipCode ,
129130 OrderId = order . OrderId
130131 } ;
131- _dbContext . Add ( shipping ) ;
132- _dbContext . SaveChanges ( ) ;
132+ dbContext . Add ( shipping ) ;
133+ dbContext . SaveChanges ( ) ;
133134 }
134135 catch ( Exception ex )
135136 {
0 commit comments