This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch ignite-27278
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-27278 by this push:
     new 86cdb2f0460 wip BasicMappers - sql
86cdb2f0460 is described below

commit 86cdb2f0460b630616b6795cebad2fdb95be9e74
Author: Pavel Tupitsyn <[email protected]>
AuthorDate: Wed Dec 24 12:14:18 2025 +0200

    wip BasicMappers - sql
---
 .../platforms/dotnet/Apache.Ignite/Internal/Sql/Sql.cs  | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/modules/platforms/dotnet/Apache.Ignite/Internal/Sql/Sql.cs 
b/modules/platforms/dotnet/Apache.Ignite/Internal/Sql/Sql.cs
index b89451b50e2..770a78de6a3 100644
--- a/modules/platforms/dotnet/Apache.Ignite/Internal/Sql/Sql.cs
+++ b/modules/platforms/dotnet/Apache.Ignite/Internal/Sql/Sql.cs
@@ -33,6 +33,7 @@ namespace Apache.Ignite.Internal.Sql
     using Proto;
     using Proto.BinaryTuple;
     using Proto.MsgPack;
+    using Table;
     using Table.Serialization;
     using Transactions;
 
@@ -73,8 +74,19 @@ namespace Apache.Ignite.Internal.Sql
         /// <inheritdoc/>
         [RequiresUnreferencedCode(ReflectionUtils.TrimWarning)]
         public async Task<IResultSet<T>> ExecuteAsync<T>(
-            ITransaction? transaction, SqlStatement statement, 
CancellationToken cancellationToken, params object?[]? args) =>
-            await ExecuteAsyncInternal(
+            ITransaction? transaction, SqlStatement statement, 
CancellationToken cancellationToken, params object?[]? args)
+        {
+            if (BasicMappers.TryGet<T>() is { } mapper)
+            {
+                return await ExecuteAsync(
+                    transaction,
+                    mapper,
+                    statement,
+                    cancellationToken,
+                    args).ConfigureAwait(false);
+            }
+
+            return await ExecuteAsyncInternal(
                     transaction,
                     statement,
                     static meta => GetReaderFactory<T>(meta),
@@ -82,6 +94,7 @@ namespace Apache.Ignite.Internal.Sql
                     args,
                     cancellationToken)
                 .ConfigureAwait(false);
+        }
 
         /// <inheritdoc/>
         public async Task<IResultSet<T>> ExecuteAsync<T>(

Reply via email to