Skip to content

Query: Improvements to Navigation Expansion #19377

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 1 commit into from
Jan 1, 2020
Merged

Conversation

smitpatel
Copy link
Contributor

@smitpatel smitpatel commented Dec 20, 2019

  • Skip/Take does not force applying pending selector and changing shape.
  • Throw translation failure message for Querayble methods which we don't translate (hence we don't process in navigation expansion). Earlier we threw query failed message. Now Navigation Expansion does not throw QueryFailed error message from any place.
  • Unwrap type conversion for validating member access during include expansion so that we don't generate include when derived type's member is accessed.

Resolves #18140
Resolves #18374
Resolves #18672
Resolves #18734
Resolves #19138
Resolves #19207

@smitpatel smitpatel force-pushed the smit/navexpansion branch 2 times, most recently from 5effe0e to 698ed42 Compare December 30, 2019 19:21
@@ -1994,5 +1996,96 @@ public virtual Task Using_same_parameter_twice_in_query_generates_one_sql_parame
ss => ss.Set<Customer>().Where(c => i + c.CustomerID + i == c.CompanyName)
.Select(c => c.CustomerID));
}

//[ConditionalTheory]
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests for #19059 #19060
Fixing them in a separate PR.

@smitpatel smitpatel force-pushed the smit/navexpansion branch 2 times, most recently from 8cd81ee to fcc4f78 Compare December 30, 2019 20:04
@smitpatel smitpatel marked this pull request as ready for review December 30, 2019 20:04
@@ -3300,7 +3283,7 @@ public virtual void Select_Where_Subquery_Equality()
using var context = CreateContext();
var orders
= (from o in context.Orders.OrderBy(o => o.OrderID).Take(1)
// ReSharper disable once UseMethodAny.0
// ReSharper disable once UseMethodAny.0
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

extra indent

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

VS auto-format did it. I believe this is one point where these is conflict between settings in IDEs.

- Skip/Take does not force applying pending selector and changing shape.
- Throw translation failure message for Querayble methods which we don't translate (hence we don't process in navigation expansion). Earlier we threw query failed message. Now Navigation Expansion does not throw QueryFailed error message from any place.
- Unwrap type conversion for validating member access during include expansion so that we don't generate include when derived type's member is accessed.

Resolves #18140
Resolves #18374
Resolves #18672
Resolves #18734
Resolves #19138
Resolves #19207
@smitpatel smitpatel merged commit 8a8a3f2 into master Jan 1, 2020
@smitpatel smitpatel deleted the smit/navexpansion branch January 1, 2020 10:59
smitpatel added a commit that referenced this pull request Jan 2, 2020
smitpatel added a commit that referenced this pull request Jan 2, 2020
smitpatel added a commit that referenced this pull request Mar 10, 2020
Resolved by #19377
Issue fixed since cast to base type is removed by nav expansion sas it is redundant

Resolves #20046
smitpatel added a commit that referenced this pull request Mar 10, 2020
Resolved by #19377
Issue fixed since cast to base type is removed by nav expansion as it is redundant

Resolves #20046
smitpatel added a commit that referenced this pull request Mar 10, 2020
Resolved by #19377
Issue fixed since cast to base type is removed by nav expansion as it is redundant

Resolves #20046
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
2 participants