Addition |
Drivers 4.2 |
Drivers 4.2 |
01252016 |
25-Jan-2016 |
PostgreSQL: Added Postgis type support (v9+), so geometry types are properly reported as the 'geometry' type, and they result in system.object .net type so type converters can be used to properly convert them to native npgsql types. |
Fix |
Drivers 4.2 |
Drivers 4.2 |
01252016 |
25-Jan-2016 |
PostgreSQL driver: When loading a project with npgsql v3 mappings into the designer the npgsql v2 mappings weren't always overwritten with v3 ones. |
Fix |
Templates 4.2 |
Templates 4.2 |
12232015 |
23-Dec-2015 |
Entity Framework, Code First: in a m:n relationship it could be the FK fields weren't defined in the mapping of the m:n relationship causing problems when a row was inserted. |
Fix |
Drivers 4.2 |
Drivers 4.2 |
12182015 |
18-Dec-2015 |
PostgreSQL driver: a varchar field in a table-valued-function return set has a negative length according to postgresql and the resultset retriever then wasn't able to obtain a proper type for that column. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
12162015 |
16-Dec-2015 |
Linq: M:N over Select Many fails if multiple where/any clauses are present due to incorrect scope analysis for aliasing |
Change |
Designer 4.2 |
Designer Core 4.2 |
December 11th, 2015 |
11-Dec-2015 |
When a project was loaded, FK fields were always synced with their PK fields assigned to them. This could mean an erroneous relationship would be 'corrected' but the wrong way (the PK type needed change, not the FK type), so it would go unnoticed. FK fields are now loaded as-is and not synced during project load. |
Fix |
Designer 4.2 |
Designer Core 4.2 |
December 9th, 2015 |
09-Dec-2015 |
Import could fail to load a project to import data from. |
Change |
Designer 4.2 |
Designer Core 4.2 |
December 9th, 2015 |
09-Dec-2015 |
Catalog Refresher: If an element was mapped onto a view, IsOptional values for fields of the element weren't synced with the mapped target view's fields's Nullable values. This was by design. This has been changed to sync IsOptional with Nullable during a refresh of the catalog metadata if the element field's IsOptional value was equal to the target field's Nullable value. Previously this sync was only performed for tables, not views. As before for tables, if the element's field's IsOptional value differs from the old target field's Nullable value (so the user has changed the value of IsOptional at some point) the new view's field's Nullable value is ignored, to prevent overwriting a manual change. |
Fix |
Templates 4.2 |
Templates 4.2 |
12092015 |
09-Dec-2015 |
Entity Framework, Code First: If the PK was a compound PK and the fields were not in alphabetical order, it could be the generated mappings for relationships had fields of the FK in the wrong order if FK fields were emitted. |
Change |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
11202015 |
20-Nov-2015 |
SQL Server DQE: if no orderby was specified or the orderby was wrapped in an outer query, paging on SQL Server 2012+ would fail with CompatibilityLevel set to 2012 as OFFSET wasn't expected without an ORDER BY clause. The fix introduces ORDER BY (SELECT NULL) if no sortclause is specified for the outer query. |
Fix |
Drivers 4.2 |
Drivers 4.2 |
11202015 |
20-Nov-2015 |
SQL Server Driver: when a synonym was used, uniqueidentifier and bit as well as date/datetime fields in the synonym would have a length specification. This could lead to problems with Entity Framework and EDMX mapping files. |
Change |
Designer 4.2 |
Designer Core 4.2 |
November 20th, 2015 |
20-Nov-2015 |
The unique name for a relationship always contained a GUID. this name was used in Linq to Sql. We moved away from this to a new scheme so the name is unique as long as the names of the entities+navigators stay the same. This avoids generated linq to sql code become 'changed' only on the relationship names. |
Fix |
Templates 4.2 |
Templates 4.2 |
11172015 |
17-Nov-2015 |
Entity Framework, Code First: If the navigator on the FK side was missing on a 1:n relationship, the mapping code contained a wrong directive appended to the WithRequired call
|
Fix |
Templates 4.2 |
Templates 4.2 |
11172015 |
17-Nov-2015 |
Entity Framework, Code First: If the discriminator fields were of type string, it could be the values weren't wrapped in quotes
|
Fix |
Templates 4.2 |
Templates 4.2 |
11172015 |
17-Nov-2015 |
Entity Framework, Code First:If the navigator on the FK side was missing on a 1:n relationship and no FK fields were emitted, the generator crashed as the wrong mapping was passed to the emit function |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
11162015 |
16-Nov-2015 |
Adapter, SQL Server: When the compatibility mode was set in code on the DataAccessAdapter, at runtime the default was still used. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
11122015 |
12-Nov-2015 |
Linq: Any() on a joined entity fetch could result in a NullReferenceException. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
11102015 |
10-Nov-2015 |
In an edge case with prefetch a m:n related set to an entity set which uses a where clause using a derived table, it could be the query to fetch the related set failed if the PK field was renamed. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
11102015 |
10-Nov-2015 |
Linq: When a linq query contained a join with an on clause which was mistakingly formulated using navigators and not fields, the query processor crashed while reporting this error as it assumed the input were fields, while they were not. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
11092015 |
09-Nov-2015 |
Linq: If a Coalesce call was made on a boolean in the projection, the coalesce call was unnecessarily wrapped with a CASE statement to overcome the bool->1/0 conversion necessary for SQL, however the CASE statement wasn't properly set-up and therefore the query crashed. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
10152015 |
15-Oct-2015 |
Linq: In a situation with an aggregate function on an expression using fields of a projection, it could be the resulting SQL query had invalid alias references |
Change |
Templates 4.2 |
Templates 4.2 |
10092015 |
09-Oct-2015 |
Entity Framework, Code First: to enforce 'IsRowVersion' instead of 'IsConcurrencyToken' on a property definition, it's now enough to set 'ForcedStoreGeneratedPatternValue' to 'Computed' and 'UseForOptimisticConcurrencyChecks' to true. |
Fix |
Templates 4.2 |
Templates 4.2 |
10062015 |
06-Oct-2015 |
Entity Framework, Code First: the optional/required directives weren't always emitted to the right side of a relationship. |
Fix |
Runtime Libraries 4.2 |
Runtime Libraries 4.2 |
10062015 |
06-Oct-2015 |
Linq: in an edge case it could be the correlation predicate for a nested query in a projection would refer to a field in a derived table by its original name however the field was renamed due to a duplicate and the correlation predicate therefore referenced the wrong field. |
Fix |
Drivers 4.2 |
Drivers 4.2 |
09282015 |
28-Sep-2015 |
PostgreSQL driver, npgsql 3.0.2+: .NET -> DB type conversion table contained some filters which were too narrow, causing the designer not to pick the right DB types for several .NET types with a specific, valid length/precision and/or scale. |