public override IConventionSkipNavigation?OnSkipNavigationInverseChanged(
            IConventionSkipNavigationBuilder navigationBuilder,
            IConventionSkipNavigation?inverse,
            IConventionSkipNavigation?oldInverse)
        {
            if (!navigationBuilder.Metadata.DeclaringEntityType.IsInModel)
            {
                return(null);
            }

            using (_dispatcher.DelayConventions())
            {
                _skipNavigationConventionContext.ResetState(inverse);
                foreach (var skipNavigationConvention in _conventionSet.SkipNavigationInverseChangedConventions)
                {
                    skipNavigationConvention.ProcessSkipNavigationInverseChanged(
                        navigationBuilder, inverse, oldInverse, _skipNavigationConventionContext);
                    if (_skipNavigationConventionContext.ShouldStopProcessing())
                    {
                        return(_skipNavigationConventionContext.Result);
                    }
                }
            }

            return(!navigationBuilder.Metadata.IsInModel ? null : inverse);
        }
 /// <inheritdoc />
 public virtual void ProcessSkipNavigationInverseChanged(
     IConventionSkipNavigationBuilder skipNavigationBuilder,
     IConventionSkipNavigation?inverse,
     IConventionSkipNavigation?oldInverse,
     IConventionContext <IConventionSkipNavigation> context)
 {
     CreateJoinEntityType(skipNavigationBuilder);
 }
 public override IConventionSkipNavigation?OnSkipNavigationInverseChanged(
     IConventionSkipNavigationBuilder navigationBuilder,
     IConventionSkipNavigation?inverse,
     IConventionSkipNavigation?oldInverse)
 {
     Add(new OnSkipNavigationInverseChangedNode(navigationBuilder, inverse, oldInverse));
     return(inverse);
 }
 public OnSkipNavigationInverseChangedNode(
     IConventionSkipNavigationBuilder navigationBuilder,
     IConventionSkipNavigation?inverse,
     IConventionSkipNavigation?oldInverse)
 {
     NavigationBuilder = navigationBuilder;
     Inverse           = inverse;
     OldInverse        = oldInverse;
 }
Beispiel #5
0
        public virtual void ProcessSkipNavigationInverseChanged(
            IConventionSkipNavigationBuilder skipNavigationBuilder,
            IConventionSkipNavigation?inverse,
            IConventionSkipNavigation?oldInverse,
            IConventionContext <IConventionSkipNavigation> context)
        {
            var foreignKey = skipNavigationBuilder.Metadata.ForeignKey;

            if (foreignKey != null &&
                foreignKey.GetPropertiesConfigurationSource() == null &&
                inverse?.IsInModel == true)
            {
                DiscoverProperties(foreignKey.Builder, context);
            }
        }
Beispiel #6
0
 /// <summary>
 ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
 ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
 ///     any release. You should only use it directly in your code with extreme caution and knowing that
 ///     doing so can result in application failures when updating to a new Entity Framework Core release.
 /// </summary>
 public virtual IConventionSkipNavigation?OnSkipNavigationInverseChanged(
     IConventionSkipNavigationBuilder navigationBuilder,
     IConventionSkipNavigation?inverse,
     IConventionSkipNavigation?oldInverse)
 => _scope.OnSkipNavigationInverseChanged(navigationBuilder, inverse, oldInverse);
 public abstract IConventionSkipNavigation?OnSkipNavigationInverseChanged(
     IConventionSkipNavigationBuilder navigationBuilder,
     IConventionSkipNavigation?inverse,
     IConventionSkipNavigation?oldInverse);
 public virtual IConventionSkipNavigation?OnSkipNavigationInverseChanged(
     [NotNull] IConventionSkipNavigationBuilder navigationBuilder,
     [CanBeNull] IConventionSkipNavigation?inverse,
     [CanBeNull] IConventionSkipNavigation?oldInverse)
 => _scope.OnSkipNavigationInverseChanged(navigationBuilder, inverse, oldInverse);
 public abstract IConventionSkipNavigation?OnSkipNavigationInverseChanged(
     [NotNull] IConventionSkipNavigationBuilder navigationBuilder,
     [CanBeNull] IConventionSkipNavigation?inverse,
     [CanBeNull] IConventionSkipNavigation?oldInverse);