entity-framework
disable client evaluation
Client evaluation can occur unexpectedly for some developers (in addition to the GroupBy case above), but efcore can be configured to throw where client evaluation occurs;
scss
optionsBuilder
.UseSqlServer(...)
.ConfigureWarnings(warnings => warnings.Throw(RelationalEventId.QueryClientEvaluationWarning));
efcore groupby
Until efcore 2.1, GroupBy is performed by the client, and not in the database.
entity framework extensions
Add BULK INSERT and MERGE INTO statements with entity framework using Entity Framework Extensions. A free trial exists but the paid option is worth it and the developer responds and fixes issues very quickly.