/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> public virtual void SetIsNullable(bool nullable, ConfigurationSource configurationSource) { if (nullable) { if (!ClrType.IsNullableType()) { throw new InvalidOperationException(CoreStrings.CannotBeNullable(Name, DeclaringEntityType.DisplayName(), ClrType.ShortDisplayName())); } if (Keys != null) { throw new InvalidOperationException(CoreStrings.CannotBeNullablePK(Name, DeclaringEntityType.DisplayName())); } } UpdateIsNullableConfigurationSource(configurationSource); var isChanging = IsNullable != nullable; SetFlag(nullable, PropertyFlags.IsNullable); if (isChanging) { DeclaringEntityType.Model.ConventionDispatcher.OnPropertyNullableChanged(Builder); } }