Поделиться через


IMaterializationInterceptor.CreatingInstance Метод

Определение

Вызывается непосредственно перед тем, как EF собирается создать экземпляр сущности. То есть до вызова конструктора.

public virtual Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<object> CreatingInstance (Microsoft.EntityFrameworkCore.Diagnostics.MaterializationInterceptionData materializationData, Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<object> result);
abstract member CreatingInstance : Microsoft.EntityFrameworkCore.Diagnostics.MaterializationInterceptionData * Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<obj> -> Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<obj>
override this.CreatingInstance : Microsoft.EntityFrameworkCore.Diagnostics.MaterializationInterceptionData * Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<obj> -> Microsoft.EntityFrameworkCore.Diagnostics.InterceptionResult<obj>
Public Overridable Function CreatingInstance (materializationData As MaterializationInterceptionData, result As InterceptionResult(Of Object)) As InterceptionResult(Of Object)

Параметры

materializationData
MaterializationInterceptionData

Контекстная информация о материализации.

result
InterceptionResult<Object>

Представляет текущий результат, если он существует. Это значение будет HasResult иметь значение , true если какой-то предыдущий перехватчик подавлял выполнение путем вызова SuppressWithResult(TResult). Это значение обычно используется в качестве возвращаемого значения для реализации этого метода.

Возвращаемое значение

Если HasResult параметр имеет значение false, EF будет продолжать работу в обычном режиме. Если HasResult имеет значение true, EF подавляет создание экземпляра сущности и использует Result вместо него. Реализация этого метода для любого перехватчика, который не пытается изменить результат, должна возвращать result переданное значение.

Применяется к