AdoNetDatabaseEffects
A driver-agnostic that opens a connection through the supplied factory, binds dummy parameter values, executes the SQL, and reads back column metadata from the resulting. Type mapping is delegated to a supplied
`` so the class itself has zero dialect knowledge.
public sealed class AdoNetDatabaseEffects : IDatabaseEffects
Constructors
AdoNetDatabaseEffects
public AdoNetDatabaseEffects(Func<string, DbConnection> connectionFactory, AdoNetDatabaseEffects.TypeMapper typeMapper)
Creates a new ``.
| Parameter | Type | Description |
|---|---|---|
connectionFactory |
DbConnection> |
Builds a driver-specific `` from a connection |
string (e.g. cs => new SqliteConnection(cs)). |
||
typeMapper |
TypeMapper |
Resolves a C# type literal from a reader column. |
Methods
GetColumnMetadataFromSqlAsync(string, string, IEnumerable<ParameterInfo>)
public 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 |
Database connection string |
sql |
String |
SQL query to execute |
parameters |
ParameterInfo> |
Query parameters |
Returns: SqlError>> - List of database columns with their metadata