Release notes for re-motion version 1.13.3

List of Issues

Bugfixes

Improvements

New Features

Details

[COMMONS-1128] FieldAccessResolveException: "The member '...' does not identify a relation" is thrown when a query uses a property defined in a class that does not have a table associated with it (concrete table inheritance)

Component/s: Data Data.Linq
Issue Type: Bug
Resolution: Fixed
Status: Closed


When you create a property path that goes from one DomainObject class to another, the re-linq to re-store bridge has to create a join between the tables associated with the DomainObject classes. In concrete-table inheritance scenarios, it can happen that the class involved in the path does not have a table associated with it because only its subclasses are mapped to tables. In such cases, re-store will throw an exception.

For example, the following test queries will cause this exception to happen:

var query = from c in QueryFactory.CreateLinqQuery<TableInheritance.TestDomain.ClassWithUnidirectionalRelation> ()
            where c.DomainBase.CreatedAt == new DateTime (2006, 01, 03)
            select c;
var query = from c in QueryFactory.CreateLinqQuery<TableInheritance.TestDomain.Client> ()
            from domainBase in c.AssignedObjects
            where domainBase.CreatedAt == new DateTime (2006, 01, 03)
            select domainBase;

To resolve this, re-store should use views instead of tables for the joins.

[COMMONS-1121] Rename Fetch to FetchMany to match FetchOne

Component/s: Data.Linq
Issue Type: Improvement
Resolution: Fixed
Status: Closed


(no description)

[COMMONS-1106] SelectClause should throw on null projections

Component/s: Data.Linq
Issue Type: Improvement
Resolution: Fixed
Status: Closed


(no description)

[COMMONS-1105] The statements generated for MemberFromClauses and implicit joins should use views instead of tables

Component/s: Data.Linq
Issue Type: Improvement
Resolution: Fixed
Status: Closed


(no description)

[COMMONS-1115] Support eager fetching over relation properties with a cardinality of one

Component/s: Data.Linq
Issue Type: New Feature
Resolution: Fixed
Status: Closed


In Remotion.Data.DomainObjects.Queries:

  • EagerFetcher (PerformEagerFetches, adapt check, handle single fetch properties accordingly (no registering should be required))
  • EagerFetchQueryCollection (Add, adapt check)

In Remotion.Data.Linq:

  • ExtensionMethods.ExtensionMethods.Fetch (adapt signature)
  • EagerFetching.FluentFetchRequest (ThenFetch, adapt signature)

[COMMONS-1039] Eager fetching

Component/s: Data
Issue Type: New Feature
Resolution: Fixed
Status: Closed
FixVersion: 1.13.3


(no description)

[COMMONS-1102] Clean up remaining issues and add missing tests

Component/s: Data.Linq
Issue Type: Sub-task
Resolution: Fixed
Status: Closed


(no description)