예제 #1
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 InternalServicePropertyBuilder HasParameterBinding(
            ServiceParameterBinding parameterBinding, ConfigurationSource configurationSource)
        {
            if (CanSetParameterBinding(parameterBinding, configurationSource))
            {
                Metadata.SetParameterBinding(parameterBinding, configurationSource);
                return(this);
            }

            return(null);
        }
        /// <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 bool SetParameterBinding(
            [NotNull] ServiceParameterBinding parameterBinding, ConfigurationSource configurationSource)
        {
            if (configurationSource.Overrides(Metadata.GetParameterBindingConfigurationSource()) ||
                (Metadata.ParameterBinding == parameterBinding))
            {
                Metadata.SetParameterBinding(parameterBinding, configurationSource);
                return(true);
            }

            return(false);
        }
예제 #3
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 InternalServicePropertyBuilder SetParameterBinding(
            [NotNull] ServiceParameterBinding parameterBinding, ConfigurationSource configurationSource)
        {
            if (configurationSource.Overrides(Metadata.GetParameterBindingConfigurationSource()) ||
                (Metadata.ParameterBinding == parameterBinding))
            {
                Metadata.SetParameterBinding(parameterBinding, configurationSource);
                return(this);
            }

            return(null);
        }
예제 #4
0
 /// <inheritdoc />
 bool IConventionServicePropertyBuilder.CanSetParameterBinding(ServiceParameterBinding parameterBinding, bool fromDataAnnotation)
 => CanSetParameterBinding(
     parameterBinding, fromDataAnnotation ? ConfigurationSource.DataAnnotation : ConfigurationSource.Convention);
예제 #5
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 bool CanSetParameterBinding(ServiceParameterBinding parameterBinding, ConfigurationSource configurationSource)
 => configurationSource.Overrides(Metadata.GetParameterBindingConfigurationSource()) ||
 (Metadata.ParameterBinding == parameterBinding);
 /// <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 static void SetParameterBinding(
     [NotNull] this IMutableServiceProperty serviceProperty,
     [NotNull] ServiceParameterBinding parameterBinding)
 => serviceProperty.AsServiceProperty().ParameterBinding = parameterBinding;