Table of Contents

Class RowForeignKeyValueFactory<TKey, TForeignKey>

Namespace
Microsoft.EntityFrameworkCore.Update.Internal
Assembly
Microsoft.EntityFrameworkCore.Relational.dll

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.

public abstract class RowForeignKeyValueFactory<TKey, TForeignKey> : IRowForeignKeyValueFactory<TKey>, IRowForeignKeyValueFactory

Type Parameters

TKey
TForeignKey
Inheritance
RowForeignKeyValueFactory<TKey, TForeignKey>
Implements
Derived
Inherited Members

Constructors

RowForeignKeyValueFactory(IForeignKeyConstraint, IColumn, ColumnAccessors, IValueConverterSelector)

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.

protected RowForeignKeyValueFactory(IForeignKeyConstraint foreignKey, IColumn column, ColumnAccessors columnAccessors, IValueConverterSelector valueConverterSelector)

Parameters

foreignKey IForeignKeyConstraint
column IColumn
columnAccessors ColumnAccessors
valueConverterSelector IValueConverterSelector

Properties

Column

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.

public virtual IColumn Column { get; }

Property Value

IColumn

ColumnAccessors

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.

public virtual ColumnAccessors ColumnAccessors { get; }

Property Value

ColumnAccessors

EqualityComparer

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.

public abstract IEqualityComparer<TKey> EqualityComparer { get; }

Property Value

IEqualityComparer<TKey>

Methods

CreateDependentEquatableKeyValue(IReadOnlyModificationCommand, bool)

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.

public virtual object? CreateDependentEquatableKeyValue(IReadOnlyModificationCommand command, bool fromOriginalValues = false)

Parameters

command IReadOnlyModificationCommand
fromOriginalValues bool

Returns

object

CreateDependentKeyValue(IReadOnlyModificationCommand, bool)

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.

public virtual object[]? CreateDependentKeyValue(IReadOnlyModificationCommand command, bool fromOriginalValues = false)

Parameters

command IReadOnlyModificationCommand
fromOriginalValues bool

Returns

object[]

CreateKeyEqualityComparer(IColumn)

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.

protected virtual IEqualityComparer<TKey> CreateKeyEqualityComparer(IColumn column)

Parameters

column IColumn

Returns

IEqualityComparer<TKey>

CreatePrincipalEquatableKeyValue(IReadOnlyModificationCommand, bool)

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.

public virtual object CreatePrincipalEquatableKeyValue(IReadOnlyModificationCommand command, bool fromOriginalValues = false)

Parameters

command IReadOnlyModificationCommand
fromOriginalValues bool

Returns

object

CreatePrincipalKeyValue(IReadOnlyModificationCommand, bool)

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.

public virtual object[] CreatePrincipalKeyValue(IReadOnlyModificationCommand command, bool fromOriginalValues = false)

Parameters

command IReadOnlyModificationCommand
fromOriginalValues bool

Returns

object[]

TryCreateDependentKeyValue(IReadOnlyModificationCommand, bool, out TKey?)

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.

public abstract bool TryCreateDependentKeyValue(IReadOnlyModificationCommand command, bool fromOriginalValues, out TKey? key)

Parameters

command IReadOnlyModificationCommand
fromOriginalValues bool
key TKey

Returns

bool

TryCreateDependentKeyValue(IDictionary<string, object?>, out TKey?)

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.

public abstract bool TryCreateDependentKeyValue(IDictionary<string, object?> keyPropertyValues, out TKey? key)

Parameters

keyPropertyValues IDictionary<string, object>
key TKey

Returns

bool

TryCreateDependentKeyValue(object?[], out TKey?)

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.

public abstract bool TryCreateDependentKeyValue(object?[] keyValues, out TKey? key)

Parameters

keyValues object[]
key TKey

Returns

bool