PostgresCodeGenerator
Postgres entry point to the shared ANTLR-based code generator.
[ExcludeFromCodeCoverage]
public static class PostgresCodeGenerator
Methods
GenerateCodeWithMetadata(string, string, SelectStatement, IReadOnlyList<DatabaseColumn>, GroupingConfig?, CodeGenerationConfig?)
public static Result<string, SqlError> GenerateCodeWithMetadata(string fileName, string sql, SelectStatement statement, IReadOnlyList<DatabaseColumn> columnMetadata, GroupingConfig? groupingConfig = null, CodeGenerationConfig? config = null)
Generates C# source for a SQL file using real database metadata.
Parameters:
| Name | Type | Description |
|---|---|---|
fileName |
String |
The SQL file base name. |
sql |
String |
The SQL content. |
statement |
SelectStatement |
The parsed statement metadata. |
columnMetadata |
DatabaseColumn> |
Real column metadata from the database. |
groupingConfig |
GroupingConfig |
Optional grouping configuration. |
config |
CodeGenerationConfig |
Optional custom code generation configuration. |
Returns: SqlError> - Result with generated source or an error.
GetColumnMetadataFromSqlAsync(string, string, IEnumerable<ParameterInfo>)
public static Task<Result<IReadOnlyList<DatabaseColumn>, SqlError>> GetColumnMetadataFromSqlAsync(string connectionString, string sql, IEnumerable<ParameterInfo> parameters)
Gets column metadata by executing the SQL query against the database.
Parameters:
| Name | Type | Description |
|---|---|---|
connectionString |
String |
Postgres connection string. |
sql |
String |
SQL query to execute. |
parameters |
ParameterInfo> |
Query parameters. |
Returns: SqlError>> - Column metadata on success; `` on failure.