# Class NpgsqlCodeGenerator

Namespace
  Npgsql.EntityFrameworkCore.PostgreSQL.Scaffolding.Internal

Assembly
  Npgsql.EntityFrameworkCore.PostgreSQL.dll

The default code generator for Npgsql.

    public class NpgsqlCodeGenerator : ProviderCodeGenerator, IProviderConfigurationCodeGenerator

Inheritance
  object
  ProviderCodeGenerator
  NpgsqlCodeGenerator

Implements
  IProviderConfigurationCodeGenerator

Inherited Members
  ProviderCodeGenerator.GenerateProviderOptions()
  ProviderCodeGenerator.GenerateContextOptions()
  ProviderCodeGenerator.GenerateUseProvider(string)
  ProviderCodeGenerator.Dependencies
  object.Equals(object)
  object.Equals(object, object)
  object.GetHashCode()
  object.GetType()
  object.MemberwiseClone()
  object.ReferenceEquals(object, object)
  object.ToString()

## Constructors

### NpgsqlCodeGenerator(ProviderCodeGeneratorDependencies)

Constructs an instance of the NpgsqlCodeGenerator class.

    public NpgsqlCodeGenerator(ProviderCodeGeneratorDependencies dependencies)

#### Parameters

`dependencies` ProviderCodeGeneratorDependencies

  The dependencies.

## Methods

### GenerateUseProvider(string, MethodCallCodeFragment?)

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 override MethodCallCodeFragment GenerateUseProvider(string connectionString, MethodCallCodeFragment? providerOptions)

#### Parameters

`connectionString` string
`providerOptions` MethodCallCodeFragment

#### Returns

MethodCallCodeFragment