Files
flatrender/services/identity/FlatRender.IdentitySvc/Infrastructure/Data/PreserveCaseNameTranslator.cs
T

21 lines
780 B
C#
Raw Normal View History

using Npgsql;
namespace FlatRender.IdentitySvc.Infrastructure.Data;
/// <summary>
/// Npgsql name translator that returns CLR names verbatim.
///
/// The database enum labels are PascalCase (e.g. 'Internal', 'Active', 'ZarinPal')
/// and match the C# enum member names exactly, so no snake_case translation may be
/// applied to enum <em>values</em>. PG type names (e.g. tenant_kind) are still passed
/// explicitly wherever this translator is used, so type-name translation is moot.
/// </summary>
public sealed class PreserveCaseNameTranslator : INpgsqlNameTranslator
{
public static readonly PreserveCaseNameTranslator Instance = new();
public string TranslateTypeName(string clrName) => clrName;
public string TranslateMemberName(string clrName) => clrName;
}