Skip to content

Commit 0c80b8b

Browse files
committed
Cache
1 parent 911adb6 commit 0c80b8b

11 files changed

Lines changed: 22 additions & 70 deletions

File tree

src/EntityFrameworkCore.SqlServer.SimpleBulks/BulkDelete/DbContextAsyncExtensions.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using Microsoft.EntityFrameworkCore;
33
using System;
44
using System.Collections.Generic;
5-
using System.Linq;
65
using System.Threading;
76
using System.Threading.Tasks;
87

@@ -15,13 +14,9 @@ public static Task<BulkDeleteResult> BulkDeleteAsync<T>(this DbContext dbContext
1514
var table = dbContext.GetTableInfor(typeof(T));
1615
var connection = dbContext.GetSqlConnection();
1716
var transaction = dbContext.GetCurrentSqlTransaction();
18-
var properties = dbContext.GetProperties(typeof(T));
19-
var primaryKeys = properties
20-
.Where(x => x.IsPrimaryKey)
21-
.Select(x => x.PropertyName);
2217

2318
return new BulkDeleteBuilder<T>(connection, transaction)
24-
.WithId(primaryKeys)
19+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2520
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2621
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
2722
.ToTable(table)

src/EntityFrameworkCore.SqlServer.SimpleBulks/BulkDelete/DbContextExtensions.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using Microsoft.EntityFrameworkCore;
33
using System;
44
using System.Collections.Generic;
5-
using System.Linq;
65

76
namespace EntityFrameworkCore.SqlServer.SimpleBulks.BulkDelete;
87

@@ -13,13 +12,9 @@ public static BulkDeleteResult BulkDelete<T>(this DbContext dbContext, IEnumerab
1312
var table = dbContext.GetTableInfor(typeof(T));
1413
var connection = dbContext.GetSqlConnection();
1514
var transaction = dbContext.GetCurrentSqlTransaction();
16-
var properties = dbContext.GetProperties(typeof(T));
17-
var primaryKeys = properties
18-
.Where(x => x.IsPrimaryKey)
19-
.Select(x => x.PropertyName);
2015

2116
return new BulkDeleteBuilder<T>(connection, transaction)
22-
.WithId(primaryKeys)
17+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2318
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2419
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
2520
.ToTable(table)

src/EntityFrameworkCore.SqlServer.SimpleBulks/BulkMatch/DbContextAsyncExtensions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ public static Task<List<T>> BulkMatchAsync<T>(this DbContext dbContext, IEnumera
3434
var table = dbContext.GetTableInfor(typeof(T));
3535
var connection = dbContext.GetSqlConnection();
3636
var transaction = dbContext.GetCurrentSqlTransaction();
37-
var properties = dbContext.GetProperties(typeof(T));
3837

3938
return new BulkMatchBuilder<T>(connection, transaction)
4039
.WithReturnedColumns(returnedColumnsSelector)

src/EntityFrameworkCore.SqlServer.SimpleBulks/BulkMatch/DbContextExtensions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ public static List<T> BulkMatch<T>(this DbContext dbContext, IEnumerable<T> mach
3232
var table = dbContext.GetTableInfor(typeof(T));
3333
var connection = dbContext.GetSqlConnection();
3434
var transaction = dbContext.GetCurrentSqlTransaction();
35-
var properties = dbContext.GetProperties(typeof(T));
3635

3736
return new BulkMatchBuilder<T>(connection, transaction)
3837
.WithReturnedColumns(returnedColumnsSelector)

src/EntityFrameworkCore.SqlServer.SimpleBulks/BulkUpdate/DbContextAsyncExtensions.cs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using Microsoft.EntityFrameworkCore;
33
using System;
44
using System.Collections.Generic;
5-
using System.Linq;
65
using System.Linq.Expressions;
76
using System.Threading;
87
using System.Threading.Tasks;
@@ -16,13 +15,9 @@ public static Task<BulkUpdateResult> BulkUpdateAsync<T>(this DbContext dbContext
1615
var table = dbContext.GetTableInfor(typeof(T));
1716
var connection = dbContext.GetSqlConnection();
1817
var transaction = dbContext.GetCurrentSqlTransaction();
19-
var properties = dbContext.GetProperties(typeof(T));
20-
var primaryKeys = properties
21-
.Where(x => x.IsPrimaryKey)
22-
.Select(x => x.PropertyName);
2318

2419
return new BulkUpdateBuilder<T>(connection, transaction)
25-
.WithId(primaryKeys)
20+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2621
.WithColumns(columnNamesSelector)
2722
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2823
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
@@ -36,13 +31,9 @@ public static Task<BulkUpdateResult> BulkUpdateAsync<T>(this DbContext dbContext
3631
var table = dbContext.GetTableInfor(typeof(T));
3732
var connection = dbContext.GetSqlConnection();
3833
var transaction = dbContext.GetCurrentSqlTransaction();
39-
var properties = dbContext.GetProperties(typeof(T));
40-
var primaryKeys = properties
41-
.Where(x => x.IsPrimaryKey)
42-
.Select(x => x.PropertyName);
4334

4435
return new BulkUpdateBuilder<T>(connection, transaction)
45-
.WithId(primaryKeys)
36+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
4637
.WithColumns(columnNames)
4738
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
4839
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))

src/EntityFrameworkCore.SqlServer.SimpleBulks/BulkUpdate/DbContextExtensions.cs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using Microsoft.EntityFrameworkCore;
33
using System;
44
using System.Collections.Generic;
5-
using System.Linq;
65
using System.Linq.Expressions;
76

87
namespace EntityFrameworkCore.SqlServer.SimpleBulks.BulkUpdate;
@@ -14,13 +13,9 @@ public static BulkUpdateResult BulkUpdate<T>(this DbContext dbContext, IEnumerab
1413
var table = dbContext.GetTableInfor(typeof(T));
1514
var connection = dbContext.GetSqlConnection();
1615
var transaction = dbContext.GetCurrentSqlTransaction();
17-
var properties = dbContext.GetProperties(typeof(T));
18-
var primaryKeys = properties
19-
.Where(x => x.IsPrimaryKey)
20-
.Select(x => x.PropertyName);
2116

2217
return new BulkUpdateBuilder<T>(connection, transaction)
23-
.WithId(primaryKeys)
18+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2419
.WithColumns(columnNamesSelector)
2520
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2621
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
@@ -34,13 +29,9 @@ public static BulkUpdateResult BulkUpdate<T>(this DbContext dbContext, IEnumerab
3429
var table = dbContext.GetTableInfor(typeof(T));
3530
var connection = dbContext.GetSqlConnection();
3631
var transaction = dbContext.GetCurrentSqlTransaction();
37-
var properties = dbContext.GetProperties(typeof(T));
38-
var primaryKeys = properties
39-
.Where(x => x.IsPrimaryKey)
40-
.Select(x => x.PropertyName);
4132

4233
return new BulkUpdateBuilder<T>(connection, transaction)
43-
.WithId(primaryKeys)
34+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
4435
.WithColumns(columnNames)
4536
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
4637
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))

src/EntityFrameworkCore.SqlServer.SimpleBulks/DirectDelete/DbContextAsyncExtensions.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using EntityFrameworkCore.SqlServer.SimpleBulks.Extensions;
33
using Microsoft.EntityFrameworkCore;
44
using System;
5-
using System.Linq;
65
using System.Threading;
76
using System.Threading.Tasks;
87

@@ -15,13 +14,9 @@ public static Task<BulkDeleteResult> DirectDeleteAsync<T>(this DbContext dbConte
1514
var table = dbContext.GetTableInfor(typeof(T));
1615
var connection = dbContext.GetSqlConnection();
1716
var transaction = dbContext.GetCurrentSqlTransaction();
18-
var properties = dbContext.GetProperties(typeof(T));
19-
var primaryKeys = properties
20-
.Where(x => x.IsPrimaryKey)
21-
.Select(x => x.PropertyName);
2217

2318
return new BulkDeleteBuilder<T>(connection, transaction)
24-
.WithId(primaryKeys)
19+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2520
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2621
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
2722
.ToTable(table)

src/EntityFrameworkCore.SqlServer.SimpleBulks/DirectDelete/DbContextExtensions.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using EntityFrameworkCore.SqlServer.SimpleBulks.Extensions;
33
using Microsoft.EntityFrameworkCore;
44
using System;
5-
using System.Linq;
65

76
namespace EntityFrameworkCore.SqlServer.SimpleBulks.DirectDelete;
87

@@ -13,13 +12,9 @@ public static BulkDeleteResult DirectDelete<T>(this DbContext dbContext, T data,
1312
var table = dbContext.GetTableInfor(typeof(T));
1413
var connection = dbContext.GetSqlConnection();
1514
var transaction = dbContext.GetCurrentSqlTransaction();
16-
var properties = dbContext.GetProperties(typeof(T));
17-
var primaryKeys = properties
18-
.Where(x => x.IsPrimaryKey)
19-
.Select(x => x.PropertyName);
2015

2116
return new BulkDeleteBuilder<T>(connection, transaction)
22-
.WithId(primaryKeys)
17+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2318
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2419
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
2520
.ToTable(table)

src/EntityFrameworkCore.SqlServer.SimpleBulks/DirectUpdate/DbContextAsyncExtensions.cs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using Microsoft.EntityFrameworkCore;
44
using System;
55
using System.Collections.Generic;
6-
using System.Linq;
76
using System.Linq.Expressions;
87
using System.Threading;
98
using System.Threading.Tasks;
@@ -17,13 +16,9 @@ public static Task<BulkUpdateResult> DirectUpdateAsync<T>(this DbContext dbConte
1716
var table = dbContext.GetTableInfor(typeof(T));
1817
var connection = dbContext.GetSqlConnection();
1918
var transaction = dbContext.GetCurrentSqlTransaction();
20-
var properties = dbContext.GetProperties(typeof(T));
21-
var primaryKeys = properties
22-
.Where(x => x.IsPrimaryKey)
23-
.Select(x => x.PropertyName);
2419

2520
return new BulkUpdateBuilder<T>(connection, transaction)
26-
.WithId(primaryKeys)
21+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2722
.WithColumns(columnNamesSelector)
2823
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2924
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
@@ -37,13 +32,9 @@ public static Task<BulkUpdateResult> DirectUpdateAsync<T>(this DbContext dbConte
3732
var table = dbContext.GetTableInfor(typeof(T));
3833
var connection = dbContext.GetSqlConnection();
3934
var transaction = dbContext.GetCurrentSqlTransaction();
40-
var properties = dbContext.GetProperties(typeof(T));
41-
var primaryKeys = properties
42-
.Where(x => x.IsPrimaryKey)
43-
.Select(x => x.PropertyName);
4435

4536
return new BulkUpdateBuilder<T>(connection, transaction)
46-
.WithId(primaryKeys)
37+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
4738
.WithColumns(columnNames)
4839
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
4940
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))

src/EntityFrameworkCore.SqlServer.SimpleBulks/DirectUpdate/DbContextExtensions.cs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using Microsoft.EntityFrameworkCore;
44
using System;
55
using System.Collections.Generic;
6-
using System.Linq;
76
using System.Linq.Expressions;
87

98
namespace EntityFrameworkCore.SqlServer.SimpleBulks.DirectUpdate;
@@ -15,13 +14,9 @@ public static BulkUpdateResult DirectUpdate<T>(this DbContext dbContext, T data,
1514
var table = dbContext.GetTableInfor(typeof(T));
1615
var connection = dbContext.GetSqlConnection();
1716
var transaction = dbContext.GetCurrentSqlTransaction();
18-
var properties = dbContext.GetProperties(typeof(T));
19-
var primaryKeys = properties
20-
.Where(x => x.IsPrimaryKey)
21-
.Select(x => x.PropertyName);
2217

2318
return new BulkUpdateBuilder<T>(connection, transaction)
24-
.WithId(primaryKeys)
19+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
2520
.WithColumns(columnNamesSelector)
2621
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
2722
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))
@@ -35,13 +30,9 @@ public static BulkUpdateResult DirectUpdate<T>(this DbContext dbContext, T data,
3530
var table = dbContext.GetTableInfor(typeof(T));
3631
var connection = dbContext.GetSqlConnection();
3732
var transaction = dbContext.GetCurrentSqlTransaction();
38-
var properties = dbContext.GetProperties(typeof(T));
39-
var primaryKeys = properties
40-
.Where(x => x.IsPrimaryKey)
41-
.Select(x => x.PropertyName);
4233

4334
return new BulkUpdateBuilder<T>(connection, transaction)
44-
.WithId(primaryKeys)
35+
.WithId(dbContext.GetPrimaryKeys(typeof(T)))
4536
.WithColumns(columnNames)
4637
.WithDbColumnMappings(dbContext.GetColumnNames(typeof(T)))
4738
.WithDbColumnTypeMappings(dbContext.GetColumnTypes(typeof(T)))

0 commit comments

Comments
 (0)