# Class NpgsqlStrings

Namespace
  Npgsql.EntityFrameworkCore.PostgreSQL.Internal

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 NpgsqlStrings

Inheritance
  object
  NpgsqlStrings

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

## Properties

### CannotUseDataSourceWithAuthCallbacks

Cannot set ProvideClientCertificatesCallback, RemoteCertificateValidationCallback or ProvidePasswordCallback when a data source is provided.

    public static string CannotUseDataSourceWithAuthCallbacks { get; }

#### Property Value

string

### Ef7JsonMappingNotSupported

The EF Core 7.0 JSON support isn't currently supported by the Npgsql provider. To map to JSON, see https://www.npgsql.org/efcore/mapping/json.html.

    public static string Ef7JsonMappingNotSupported { get; }

#### Property Value

string

### FreeTextFunctionOnClient

The 'FreeText' method is not supported because the query has switched to client-evaluation. Inspect the log to determine which query expressions are triggering client-evaluation.

    public static string FreeTextFunctionOnClient { get; }

#### Property Value

string

### RowValueComparisonRequiresTuplesOfSameLength

Row values comparisons require two tuple arguments of the same length.

    public static string RowValueComparisonRequiresTuplesOfSameLength { get; }

#### Property Value

string

### TransientExceptionDetected

An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure()' to the 'UseSqlServer' call.

    public static string TransientExceptionDetected { get; }

#### Property Value

string

## Methods

### DuplicateColumnCompressionMethodMismatch(object?, object?, object?, object?, object?, object?)

'{entityType1}.{property1}' and '{entityType2}.{property2}' are both mapped to column '{columnName}' in '{table}', but are configured with different compression methods.

    public static string DuplicateColumnCompressionMethodMismatch(object? entityType1, object? property1, object? entityType2, object? property2, object? columnName, object? table)

#### Parameters

`entityType1` object
`property1` object
`entityType2` object
`property2` object
`columnName` object
`table` object

#### Returns

string

### DuplicateColumnNameValueGenerationStrategyMismatch(object?, object?, object?, object?, object?, object?)

'{entityType1}.{property1}' and '{entityType2}.{property2}' are both mapped to column '{columnName}' in '{table}' but are configured with different value generation strategies.

    public static string DuplicateColumnNameValueGenerationStrategyMismatch(object? entityType1, object? property1, object? entityType2, object? property2, object? columnName, object? table)

#### Parameters

`entityType1` object
`property1` object
`entityType2` object
`property2` object
`columnName` object
`table` object

#### Returns

string

### DuplicateIndexCollationMismatch(object?, object?, object?, object?, object?, object?)

The indexes {index1} on '{entityType1}' and {index2} on '{entityType2}' are both mapped to '{table}.{indexName}', but have different collation configurations.

    public static string DuplicateIndexCollationMismatch(object? index1, object? entityType1, object? index2, object? entityType2, object? table, object? indexName)

#### Parameters

`index1` object
`entityType1` object
`index2` object
`entityType2` object
`table` object
`indexName` object

#### Returns

string

### DuplicateIndexConcurrentCreationMismatch(object?, object?, object?, object?, object?, object?)

The indexes {index1} on '{entityType1}' and {index2} on '{entityType2}' are both mapped to '{table}.{indexName}', but have different concurrent creation configurations.

    public static string DuplicateIndexConcurrentCreationMismatch(object? index1, object? entityType1, object? index2, object? entityType2, object? table, object? indexName)

#### Parameters

`index1` object
`entityType1` object
`index2` object
`entityType2` object
`table` object
`indexName` object

#### Returns

string

### DuplicateIndexIncludedMismatch(object?, object?, object?, object?, object?, object?, object?, object?)

The indexes {index1} on '{entityType1}' and {index2} on '{entityType2}' are both mapped to '{table}.{indexName}', but have different included columns: {includedColumns1} and {includedColumns2}.

    public static string DuplicateIndexIncludedMismatch(object? index1, object? entityType1, object? index2, object? entityType2, object? table, object? indexName, object? includedColumns1, object? includedColumns2)

#### Parameters

`index1` object
`entityType1` object
`index2` object
`entityType2` object
`table` object
`indexName` object
`includedColumns1` object
`includedColumns2` object

#### Returns

string

### HeterogeneousTypesInNewArray(object?, object?)

Heterogeneous store types detected when making new array ({type1}, {type2}).

    public static string HeterogeneousTypesInNewArray(object? type1, object? type2)

#### Parameters

`type1` object
`type2` object

#### Returns

string

### IdentityBadType(object?, object?, object?)

Identity value generation cannot be used for the property '{property}' on entity type '{entityType}' because the property type is '{propertyType}'. Identity value generation can only be used with signed integer properties.

    public static string IdentityBadType(object? property, object? entityType, object? propertyType)

#### Parameters

`property` object
`entityType` object
`propertyType` object

#### Returns

string

### IncludePropertyDuplicated(object?, object?)

Include property '{entityType}.{property}' cannot be defined multiple times

    public static string IncludePropertyDuplicated(object? entityType, object? property)

#### Parameters

`entityType` object
`property` object

#### Returns

string

### IncludePropertyInIndex(object?, object?)

Include property '{entityType}.{property}' is already included in the index

    public static string IncludePropertyInIndex(object? entityType, object? property)

#### Parameters

`entityType` object
`property` object

#### Returns

string

### IncludePropertyNotFound(object?, object?)

Include property '{entityType}.{property}' not found

    public static string IncludePropertyNotFound(object? entityType, object? property)

#### Parameters

`entityType` object
`property` object

#### Returns

string

### InvalidTableToIncludeInScaffolding(object?)

The specified table '{table}' is not valid. Specify tables using the format '[schema].[table]'.

    public static string InvalidTableToIncludeInScaffolding(object? table)

#### Parameters

`table` object

#### Returns

string

### NonKeyValueGeneration(object?, object?)

The property '{property}' on entity type '{entityType}' is configured to use 'SequenceHiLo' value generator, which is only intended for keys. If this was intentional configure an alternate key on the property, otherwise call 'ValueGeneratedNever' or configure store generation for this property.

    public static string NonKeyValueGeneration(object? property, object? entityType)

#### Parameters

`property` object
`entityType` object

#### Returns

string

### SequenceBadType(object?, object?, object?)

PostgreSQL sequences cannot be used to generate values for the property '{property}' on entity type '{entityType}' because the property type is '{propertyType}'. Sequences can only be used with integer properties.

    public static string SequenceBadType(object? property, object? entityType, object? propertyType)

#### Parameters

`property` object
`entityType` object
`propertyType` object

#### Returns

string

### StoredProcedureResultColumnsNotSupported(object?, object?)

The entity type '{entityType}' is mapped to the stored procedure '{sproc}', which is configured with result columns. PostgreSQL stored procedures do not support result columns; use output parameters instead.

    public static string StoredProcedureResultColumnsNotSupported(object? entityType, object? sproc)

#### Parameters

`entityType` object
`sproc` object

#### Returns

string

### StoredProcedureReturnValueNotSupported(object?, object?)

The entity type '{entityType}' is mapped to the stored procedure '{sproc}', which is configured with result columns. PostgreSQL stored procedures do not support return values; use output parameters instead.

    public static string StoredProcedureReturnValueNotSupported(object? entityType, object? sproc)

#### Parameters

`entityType` object
`sproc` object

#### Returns

string

### TwoDataSourcesInSameServiceProvider(object?)

Using two distinct data sources within a service provider is not supported, and Entity Framework is not building its own internal service provider. Either allow Entity Framework to build the service provider by removing the call to '{useInternalServiceProvider}', or ensure that the same data source is used for all uses of a given service provider passed to '{useInternalServiceProvider}'.

    public static string TwoDataSourcesInSameServiceProvider(object? useInternalServiceProvider)

#### Parameters

`useInternalServiceProvider` object

#### Returns

string