# Class NpgsqlMigrationBuilderExtensions

Namespace
  Microsoft.EntityFrameworkCore

Assembly
  Npgsql.EntityFrameworkCore.PostgreSQL.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 static class NpgsqlMigrationBuilderExtensions

Inheritance
  object
  NpgsqlMigrationBuilderExtensions

Inherited Members
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

## Methods

### CreatePostgresExtension(MigrationBuilder, string, string?, string?)

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.

    [Obsolete("Use EnsurePostgresExtension instead")]
    public static MigrationBuilder CreatePostgresExtension(this MigrationBuilder builder, string name, string? schema = null, string? version = null)

#### Parameters

`builder` MigrationBuilder
`name` string
`schema` string
`version` string

#### Returns

MigrationBuilder

### DropPostgresExtension(MigrationBuilder, string)

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.

    [Obsolete("This no longer does anything and should be removed.")]
    public static MigrationBuilder DropPostgresExtension(this MigrationBuilder builder, string name)

#### Parameters

`builder` MigrationBuilder
`name` string

#### Returns

MigrationBuilder

### EnsurePostgresExtension(MigrationBuilder, string, string?, string?)

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 static MigrationBuilder EnsurePostgresExtension(this MigrationBuilder builder, string name, string? schema = null, string? version = null)

#### Parameters

`builder` MigrationBuilder
`name` string
`schema` string
`version` string

#### Returns

MigrationBuilder

### IsNpgsql(MigrationBuilder)

Returns true if the active provider in a migration is the Npgsql provider.

    public static bool IsNpgsql(this MigrationBuilder builder)

#### Parameters

`builder` MigrationBuilder

#### Returns

bool

  True if Npgsql is being used; false otherwise.