Features
- Configure logging internally to not filter out Debug messages (#9083)
- React to feedback on warning as error for ignored calls to Include() (#9064)
- Add DbContext Validate to CLI/PS commands (#9052)
- Query: Make ExecuteSqlCommand to accept SqlParameters in different patterns (#8939)
- Post-process model snapshot to massage metadata (#8925)
- Databinding: Guide users to not bind against queries directly (#8899)
- Log a message with EF version information (#8893)
- SQL Server RevEng: Scaffold IsRowVersion for timestamp columns (#8892)
- Throw better exception when app might be using old ASP.NET pattern (#8888)
- Validate keys are not configured as AddOrUpdate/Computed (#8863)
- Improve exception message for underconfigured 1-to-1 relationships (#8857)
- Remove RelationalAnnotations.GetAnnotation(annotationName) (#8848)
- AddDbContext with ServiceLifetime.Scoped should pass scoped IServiceProvider to optionsAction (#8797)
- RevEng: Don't indent #warning (#8778)
- RevEng: Remove DbDataReaderExtension (#8712)
- Query/Test: introduce client-side ordering to QueryTests without explicit orderby, rather than using contains in the result verification (#8617)
- Query: Add Support for DateTimeOffset.Add* functions (#8590)
- CLI Tools: Add --runtime (#8479)
- Reverse engineer bool column with default constraint to nullable bool property (#8400)
- Cannot insert entity into DB using attach and EntityState.Added (#8264)
- Add parameterless overload of HasDefaultValueSql (#7872)
- Provide good feedback when providers don't implement services (#7469)
- Relax derived FK overlapping PK restriction (#7181)
- Query: Better warning and XML doc comments about ignored Includes (#7162)
- Design: Public API to instantiate DbContext classes (#7050)
- Reverse Engineer: Cmd parameter to disable naming logic (#6018)
- Make set discovery a separate service (#977)
Bugs Fixed
- Query: Included navigations are not fixed up in loaded related data (#9271)
- CLI throws: Unable to retrieve project metadata. (#9127)
- Fix .HasIndex generic type argument for owned types (#9106)
- Tools: Ignore errors in design time DbContext discovery (#9073)
- EF Core 2.0.0-preview3-26027 NullReferenceException on RelationalCommand (#9041)
- Query: compilation error for queries with Concat on two entities and Count (#9004)
- Detached entities appear in ChangeTracker.Entries() (#8921)
- QueryCache misses for dynamically created queries with ConstantExpresssions or nested MemberExpressions from closure (#8909)
- SqlServer: Literals with real type is always considered float type (#8905)
- RevEng: Default index names scaffolded (#8891)
- Metadata: Convention does not create relationship after Fluent API resolves ambiguity (#8886)
- GetDatabaseValues should always call IgnoreQueryFilters() (#8883)
- Design: Debug log messages not reported on the console (#8879)
- Changing RowNumberPaging should cause new internal service provider to be built (#8877)
- "Given key was not present in the dictionary" after migration to 2.0 (#8817)
- CLI Tools: Error when MSBuildProjectExtensionsPath doesn't exist (#8816)
- Query: manually created GroupJoin with order by key descending generates invalid SQL (#8754)
- Query: FromSql with DbParameters throws Must declare the scalar variable/No mapping to a relational type ... SqlParameter (#8721)
- Snapshots can lose annotations on non-primary keys (#8716)
- RevEng: Pass in correct argument values to ScaffoldingTypeMapper (#8697)
- MySQL:.GroupBY() thrown exceptions (#8693)
- SQL Server RevEng: No ForSqlServerIsClustered(false) on NONCLUSTERED PKs (#8687)
- HasMaxLength(4000) set to NVARCHAR(MAX) (#8685)
- InvalidCastException when casting from one value type to another in a simple select statement (#8652)
- Calling new DateTime() in projection causes NullReferenceException. (#8608)
- Entity Class with Enum : long property does not translate into BigInt when using Enum.HasFlag (#8538)
- Query: compilation error for queries with navigations inside set result operators and Count (#8525)
- Query: incorrect sql generated for query with owned entities, left join and predicate using inner qsre (#8492)
- InvalidOperationException updating an entity with CurrentValues.SetValues throws InvalidOperationException when the SetValues parameter does not contain a required field data. (#8465)
- Unable to cast object of type 'PropertyExpression' to type 'NullConditionalExpression' for some queries with include, and multiple orderbys (#8369)
- SQL for string-updates sometimes uses nvarchar(450) if a string field is used in an index (not key) (#8322)
- When I remove entities in the dbContext, they are still in navigation properties of the entities (#8319)
- Revisit concurrency detector (#8305)
- Query: Some double & float literals are wrong (#8270)
- Attaching entity and setting different IsModified values to different property prevent update (#8265)
- Query: ulong literal throws RuntimeBinderException (#8259)
- Concatenated string sequence as primary key - Insertion fail via EF code (#8239)
- DbSet.Find() doesn't work for nullable properties (#8189)
- Navs: nav expansion on GJ QSRE in projection doesn't introduce parameter (#8186)
- Memory leak in LocalView (#8144)
- One-to-one relationship with bad data behaviors differently for bi-directional verses uni-directional relationships (#8137)
- InvalidOperationException: "Collection was modified" inside NavigationFixer (#8101)
- Exception when setting the default value for a nullable int field (#8015)
- RelationalDiagnostics: Naming inconsistencies (#8001)
- Identifying shadow FK values are not propagated when tracked as unchanged or modified (#7985)
- PropertyEntry.CurrentValue should throw an exception (#7920)
- Somehow a mismatch in the ShapedCommandContext entries resulting in KeyNotFoundException (#7863)
- SQL Server: Error better when no database name (#7816)
- Where/Select/OrderBy/etc clauses referencing DB types can't execute if helper function used (#7808)
- Incorrect tracking state of loaded Entities when using ChangeTrackingStrategy.ChangedNotifications (#7803)
- Setting the IsModified flag to false on a property leaves original value untouched so the change is detected again (#7798)
- Calling IQueryable-producing methods inside expression tree throws exception when outer is enumerated: "A second operation started on this context before a previous operation completed. Any instance members are not guaranteed to be thread safe." (#7783)
- Insert not reflecting correct datatypes (#7704)
- EF Core default value for not nullable column not set (#7679)
- Re-building relationships can cause annotations to be lost (#7674)
- Entity Framework instance of entity type cannot be tracked (#7599)
- Incomplete support of NullConditionalExpression in ExpressionEqualityComparer (#7559)
- Two model classes in the same hierarchy with identical field names causes exception (#7536)
- Design: Look at generic parameters when generating namespace using directives (#7352)
- Migrations: SQL not logged on SqlServerCompact (#7317)
- Relational model builder: Consistently map shadow FK properties (#7240)
- Foreign key with backing field producing invalid sql (#7147)
- Projections With Full Types Not Fixing Up Navigations on Sqlite and SQL Server (#7131)
- Document exceptions (#7012)
- Migrations: Experience when altering memory-optimized is ugly then fails (#6887)
- Cannot set Foreign Key column name by Fluent API (#6880)
- Select following GroupBy throws exception for SqLite (#6059)
- EF Core 1.0 RTM not filtering properly on fields of type char (#5975)