Commit ea6506d1 authored by Savorboard's avatar Savorboard

update samples

parent d2faadd8
...@@ -11,7 +11,7 @@ namespace Sample.Kafka.SqlServer ...@@ -11,7 +11,7 @@ namespace Sample.Kafka.SqlServer
public class AppDbContext : DbContext public class AppDbContext : DbContext
{ {
public const string ConnectionString = "Server=localhost;Integrated Security=SSPI;Database=testcap"; public const string ConnectionString = "Server=localhost;Integrated Security=SSPI;Database=testcap;";
public DbSet<Person> Persons { get; set; } public DbSet<Person> Persons { get; set; }
......
using System; using System;
using System.Data.SqlClient; using System.Data.SqlClient;
using System.Threading.Tasks;
using Dapper; using Dapper;
using DotNetCore.CAP; using DotNetCore.CAP;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
...@@ -17,9 +18,9 @@ namespace Sample.Kafka.SqlServer.Controllers ...@@ -17,9 +18,9 @@ namespace Sample.Kafka.SqlServer.Controllers
} }
[Route("~/without/transaction")] [Route("~/without/transaction")]
public IActionResult WithoutTransaction() public async Task<IActionResult> WithoutTransaction()
{ {
_capBus.Publish("sample.kafka.sqlserver", DateTime.Now); await _capBus.PublishAsync("sample.kafka.sqlserver", DateTime.Now);
return Ok(); return Ok();
} }
...@@ -61,21 +62,33 @@ namespace Sample.Kafka.SqlServer.Controllers ...@@ -61,21 +62,33 @@ namespace Sample.Kafka.SqlServer.Controllers
} }
[Route("~/ef/transaction")] [Route("~/ef/transaction")]
public IActionResult EntityFrameworkWithTransaction([FromServices]AppDbContext dbContext) public IActionResult EntityFrameworkWithTransaction([FromServices] AppDbContext dbContext)
{ {
using (var trans = dbContext.Database.BeginTransaction(_capBus, autoCommit: false)) using (var trans = dbContext.Database.BeginTransaction(_capBus, autoCommit: false))
{ {
dbContext.Persons.Add(new Person() { Name = "ef.transaction" });
for (int i = 0; i < 2; i++) for (int i = 0; i < 2; i++)
{ {
_capBus.Publish("sample.kafka.sqlserver", DateTime.Now); _capBus.Publish("sample.kafka.sqlserver", DateTime.Now);
} }
dbContext.SaveChanges(); dbContext.Persons.Add(new Person() { Name = "ef.transaction" });
// We will assist you set dbcontext save changes and commit transaction
trans.Commit(); trans.Commit();
} }
return Ok();
}
[Route("~/ef/autocommit/transaction")]
public IActionResult EntityFrameworkAutoCommitWithTransaction([FromServices]AppDbContext dbContext)
{
using (dbContext.Database.BeginTransaction(_capBus, autoCommit: true))
{
dbContext.Persons.Add(new Person() { Name = "ef.transaction" });
_capBus.Publish("sample.kafka.sqlserver", DateTime.Now);
}
return Ok(); return Ok();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment