Release notes for re-motion version 1.13.51

List of Issues

New Features

Details

[COMMONS-2313] New Sql Backend

Component/s: Data.Linq
Issue Type: New Feature
Resolution: Unresolved
Status: Open
FixVersion: re-linq vNext


The new SQL backend should both be a good example of how to approach SQL generation using the new re-linq front-end (QueryModel, usw.) and provide a sound, extensible architecture backing re-store's LINQ provider.

It will sport SQL generation in three phases:

  • The first phase will take a query model and translate it into a SqlStatement model. SqlStatement is modeled to express the syntactical possibilities and constraints of actual SQL statements.
  • The second phase will allow an O/R mapper to resolve all elements of the SqlStatement into SQL-specific items such as tables or columns with names and aliases.
  • The third phase will then take the resolved SqlStatement and produce actual SQL text (and parameters).

LINQ providers will be able to hook into each of the three steps for customization, optimization, and advanced query transformations.

[COMMONS-2405] Support entity comparisons in where clauses

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


Support for queries of the following forms: where kitchen.Cook == otherKitchen.Cook, where kitchen.Cook == outerCook (where outerCook is a constant passed from outside the query).

The SQL generated for such queries performs primary key comparisons.

[COMMONS-2400] Support for orderby clauses

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


Support for queries of the form: from s in ... orderby s.ID, s.FirstName orderby s.LastName, s.MiddleName select s.

This generates a single SQL ORDER BY clause; the conditions are appended to each other, so that later LINQ orderby clauses have higher ordering priority (ORDER BY s.LastName, s.MiddleName, s.ID, s.FirstName).