Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Final API review polish changes #17166

Merged
merged 1 commit into from
Aug 15, 2019
Merged

Conversation

ajcvickers
Copy link
Member

  • Remove GetSetter and GetMaterializationSetter from PropertyBaseExtensions (not used)
  • Replace ExpressionExtensions.IsEFProperty with MethodInfo extension
  • Verified MemberIdentity is not exposed on public APIs
  • MemberIdentity Create(Navigation) => MemberIdentity Create(INavigation)
  • IsNonNullableRefType => IsNonNullableReferenceType
  • Remove overrides of Expression.CanReduce
  • IPrintable => IPrintableExpression
  • NullConditionalExpression updates for equality
  • Remove TranslateResultSelectorForGroupJoin
  • Looked at removing Type from RegisterRuntimeParameter, but it is needed
  • Make IConcurrencyDetector - used by providers
  • Added QueryContext.SetIsLoaded to avoid using internal StateManager
  • Marked StartTracking and StateManager on QueryContext as internal (They aren't used by providers)
  • QueryOptimizer => QueryTranslationPreprocessor
  • ShapedQueryOptimizer => QueryTranslationPostprocessor

* Remove GetSetter and GetMaterializationSetter from PropertyBaseExtensions (not used)
* Replace ExpressionExtensions.IsEFProperty with MethodInfo extension
* Verified MemberIdentity is not exposed on public APIs
* MemberIdentity Create(Navigation) => MemberIdentity Create(INavigation)
* IsNonNullableRefType => IsNonNullableReferenceType
* Remove overrides of Expression.CanReduce
* IPrintable => IPrintableExpression
* NullConditionalExpression updates for equality
* Remove TranslateResultSelectorForGroupJoin
* Looked at removing Type from RegisterRuntimeParameter, but it is needed
* Make IConcurrencyDetector - used by providers
* Added QueryContext.SetIsLoaded to avoid using internal StateManager
* Marked StartTracking and StateManager on QueryContext as internal (They aren't used by providers)
* QueryOptimizer => QueryTranslationPreprocessor
* ShapedQueryOptimizer => QueryTranslationPostprocessor
@ajcvickers ajcvickers merged commit 024582e into release/3.0 Aug 15, 2019
@ghost ghost deleted the WhatALongNoseYouHave0418 branch August 15, 2019 14:08
@@ -43,7 +43,7 @@ public static MemberIdentity Create([CanBeNull] string name)
public static MemberIdentity Create([CanBeNull] MemberInfo property)
=> property == null ? None : new MemberIdentity(property);

public static MemberIdentity Create([CanBeNull] Navigation navigation)
public static MemberIdentity Create([CanBeNull] INavigation navigation)
Copy link
Member

Choose a reason for hiding this comment

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

Shouldn't this be extension method over INavigation?

/// </summary>
/// <param name="entity"> The entity instance. </param>
/// <param name="navigation"> The navigation property. </param>
public virtual void SetIsLoaded([NotNull] object entity, [NotNull] INavigation navigation)
Copy link
Member

Choose a reason for hiding this comment

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

SetIsLoaded querycontext is bit ambiguous. For entry it makes sense. It should be renamed to something more appropriate. May be SetNavigationIsLoaded.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants